Skip to content
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

Soap response validation errors after update to 1.5.7 [SWS-517] #643

Closed
gregturn opened this issue May 22, 2009 · 13 comments
Closed

Soap response validation errors after update to 1.5.7 [SWS-517] #643

gregturn opened this issue May 22, 2009 · 13 comments
Assignees
Milestone

Comments

@gregturn
Copy link
Member

@gregturn gregturn commented May 22, 2009

Jacques Couzteau opened SWS-517 and commented

Upgrade from SpringWS 1.5.6 to 1.5.7 and update. - No code changes.
After upgrade error "java.lang.ArrayIndexOutOfBoundsException: -1" was thrown during validation. Turning validation off works as a workaround.

my Soap API has 130 calls. Most respones were working fine, not all were tested. I wonder if It might have something to do with the size of the response, all other tested responses were pretty small, see forum post for bean configurations, errors and response sample.


Affects: 1.5.7

Reference URL: http://forum.springsource.org/showthread.php?p=242464#post242464

Attachments:

Referenced from: commits 98fb08c, 004ebb1

@gregturn
Copy link
Member Author

@gregturn gregturn commented May 22, 2009

Jacques Couzteau commented

Full response.

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 3, 2009

Arjen Poutsma commented

I tried to reproduce this locally, but it works for me.

Could you try a recent snapshot (http://static.springsource.org/spring-ws/sites/1.5/downloads/snapshots.html) and see if this still occurs?

If it does, please attach your XSD schema. I cannot reproduce it fully without the schema...

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 6, 2009

Jacques Couzteau commented

Thanks Arjen - I did try with the latest snapshot and can still reprom, attaching wsdl

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 6, 2009

Jacques Couzteau commented

schema added (not the wsdl).

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 12, 2009

Arjen Poutsma commented

Thanks for the schema. Even with that, I still can't reproduce it: the GetMetaDataKeysResonse.xml you attached validates fine. See the method testAxiom in

https://fisheye.springsource.org/browse/spring-ws/trunk/core/src/test/java/org/springframework/ws/soap/server/endpoint/interceptor/PayloadValidatingInterceptorTest.java?r=1435

DId you replace both the XML and the Core module with snapshots? I did some fixes to the XML module which are related...

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 13, 2009

Jacques Couzteau commented

yes, I used the 1.5.8-SNAPSHOT for all of the following maven artefacts:
spring-xml,
spring-ws-core,
spring-ws-core-tiger,
spring-oxm,
spring-oxm-tiger,
spring-ws-security.

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 13, 2009

Jacques Couzteau commented

Here is the full response that I logged using Spring-WS 1.5.6 - The previous response was shortened.

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 13, 2009

Jacques Couzteau commented

Tried again - just to make sure - still seeing ArrayIndexOutOfBoundsException: -1 in

at com.sun.org.apache.xerces.internal.util.NamespaceSupport.popContext(NamespaceSupport.java:184)
at com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorHandlerImpl.endPrefixMapping(ValidatorHandlerImpl.java:373)
at org.springframework.xml.stream.StaxStreamXmlReader.handleEndElement(StaxStreamXmlReader.java:186)
at org.springframework.xml.stream.StaxStreamXmlReader.parseInternal(StaxStreamXmlReader.java:85)
at org.springframework.xml.stream.AbstractStaxXmlReader.parse(AbstractStaxXmlReader.java:128)
at org.springframework.xml.stream.AbstractStaxXmlReader.parse(AbstractStaxXmlReader.java:111)
at com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorImpl.process(ValidatorImpl.java:192)
at com.sun.org.apache.xerces.internal.jaxp.validation.ValidatorImpl.validate(ValidatorImpl.java:147)
    .....

I assume that in PayloadValidatingInterceptorTest you can set
private static final String VALID_MESSAGE = "GMK-Response.xml";
to my attached response and then run testAxiom();

Which should repro the problem unless my app is still doing something else - I'd be happy to give you more info - but I don't know what to look for.

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 13, 2009

Jacques Couzteau commented

FYi: I have run my test suite against the app that uses the 1.5.8-SNAPSHOT of spring web services. There are no other calls that have this problem.

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 13, 2009

Arjen Poutsma commented

I can finally reproduce it. It seems to be related to Xerces in the JDK: the test runs fine when using JDK 1.6, but under 1.5, it fails.

As a workaround, you can try upgrading to a recent version of Xerces (thus overriding the com.sun.org.apache.xerces that's built in the JDK).

I will also investigate further, and see if I can fix this.

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 13, 2009

Arjen Poutsma commented

I think I've fixed it. Can you try a recent snapshot (as of tonight) and try again?

@gregturn
Copy link
Member Author

@gregturn gregturn commented Aug 14, 2009

Jacques Couzteau commented

verified fix with latest 1.5.8 Snapshot. (Yay!)

Thank you! much appreciated.

@gregturn
Copy link
Member Author

@gregturn gregturn commented May 4, 2012

Arjen Poutsma commented

Closing old issues

@gregturn gregturn closed this May 4, 2012
@gregturn gregturn added this to the 1.5.8 milestone Sep 22, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
2 participants
You can’t perform that action at this time.