New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Handle constructors with MANY parameters. #58

Closed
ecin opened this Issue Jun 15, 2011 · 2 comments

Comments

Projects
None yet
2 participants
@ecin
Contributor

ecin commented Jun 15, 2011

Trying to parse https://webservices.netsuite.com/wsdl/v2011_1_0/netsuite.wsdl, but it fails due to one of the generated constructors having a ridiculous amount of parameters (over 255?). Netsuite themselves provide a patch for Axis in order to handle this edge case, which removes the parameters from the constructor and adds them as getters/setters.

@eed3si9n

This comment has been minimized.

Show comment
Hide comment
@eed3si9n

eed3si9n Jun 15, 2011

Owner

Scala's case class has 22 limitation, so scalaxb should have split the message into chunks. Ironically I was just making change so all operations to pass parameters of the message object, but I can resurrect message passing style for fat ones like this.

Owner

eed3si9n commented Jun 15, 2011

Scala's case class has 22 limitation, so scalaxb should have split the message into chunks. Ironically I was just making change so all operations to pass parameters of the message object, but I can resurrect message passing style for fat ones like this.

@eed3si9n eed3si9n closed this in 2e5668a Jun 15, 2011

@eed3si9n

This comment has been minimized.

Show comment
Hide comment
@eed3si9n

eed3si9n Jun 15, 2011

Owner

So one of the complex type had 250+ like you said. scalaxb segments long sequences into a chunk of 10, which means it runs out of scala's 22 limitation at 220 items. I exposed this setup as --chunk-size. So at least the code gets generated as follows:

$ scalaxb netsuite.wsdl -p netsuite --chunk-size 15 --wrap-contents "{urn:website_2011_1.lists.webservices.netsuite.com}SiteCategory" \
 --wrap-contents "{urn:general_2011_1.transactions.webservices.netsuite.com}JournalEntry" \
 --wrap-contents "{urn:inventory_2011_1.transactions.webservices.netsuite.com}AssemblyBuild"

The generated code is not compiling, so there are some other issues either in scalaxb and schema, but at least this particular issue is fixed.

Owner

eed3si9n commented Jun 15, 2011

So one of the complex type had 250+ like you said. scalaxb segments long sequences into a chunk of 10, which means it runs out of scala's 22 limitation at 220 items. I exposed this setup as --chunk-size. So at least the code gets generated as follows:

$ scalaxb netsuite.wsdl -p netsuite --chunk-size 15 --wrap-contents "{urn:website_2011_1.lists.webservices.netsuite.com}SiteCategory" \
 --wrap-contents "{urn:general_2011_1.transactions.webservices.netsuite.com}JournalEntry" \
 --wrap-contents "{urn:inventory_2011_1.transactions.webservices.netsuite.com}AssemblyBuild"

The generated code is not compiling, so there are some other issues either in scalaxb and schema, but at least this particular issue is fixed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment