[ http://issues.apache.org/jira/browse/WSIF-88?page=all ]
David Castro resolved WSIF-88.
------------------------------
Resolution: Fixed
Looks like I had a typo in my service.mapType list. Everything is working
fine, however it would have been nice to get the initial exception without
having to enable log4j.
org.apache.wsif.WSIFException: Operation failed but returned fault message
contained no part
The above doesn't help very much. I would have expected to see the real cause
of the problem.
> Collection/javabean deserialization not working
> -----------------------------------------------
>
> Key: WSIF-88
> URL: http://issues.apache.org/jira/browse/WSIF-88
> Project: Axis-WSIF
> Issue Type: Bug
> Affects Versions: 2.1
> Environment: Apache AXIS 1.3
> Reporter: David Castro
>
> ==== EXCEPTION ====
> Internal exception that is caught on line 1603 in WSIFOperation_ApacheAxis:
> org.xml.sax.SAXException: Deserializing parameter 'simulateReturn':
> could not find deserializer for type {urn:SODWS}SimulationResult
> This exception is being generated for a class that has a beanserializer
> defined. This bean has a collection attribute with another bean inside (also
> has a bean serializer defined). The web service returns what looks to be a
> correct response, but WSIF if dying on deserialization. Is there something
> more that needs to be added to the definition, even if they are simple
> javabeans? I've seen some references about default behavior of WSIF and
> wrapped/unwrapped setting that can generate this error messsage. I tried
> setting the context to use both with the same result.
> ==== service mapping ====
> <service name="MyServiceProcessor" provider="java:RPC">
> <parameter name="scope" value="session"/>
> <parameter name="allowedMethods" value="*"/>
> <parameter name="className" value="test.MyService"/>
> <beanMapping languageSpecificType="java:test.SimulationRequest"
> qname="ns1:SimulationRequest" xmlns:ns1="urn:TESTWS"/>
> <beanMapping languageSpecificType="java:test.SimulationResponsibilityEntry"
> qname="ns1:SimulationResponsibilityEntry" xmlns:ns1="urn:TESTWS"/>
> <beanMapping languageSpecificType="java:test.SimulationResult"
> qname="ns1:SimulationResult" xmlns:ns1="urn:TESTWS"/>
> <beanMapping languageSpecificType="java:test.SimulationConflict"
> qname="ns1:SimulationConflict" xmlns:ns1="urn:TESTWS"/>
> </service>
> ========
> BTW, without turning on log4j I also only got the below exception. Should I
> have recieved the aforementioned exception as a fault part or as part of the
> stack trace rather than seeing this not so helpful message? It appears that
> there is no Fault part added, even though an AxisError was thrown and the
> success status was set to false.
> org.apache.wsif.WSIFException: Operation failed but returned fault message
> contained no part
> at
> org.apache.wsif.base.WSIFClientProxy.invoke(WSIFClientProxy.java:292)
> at $Proxy0.simulate(Unknown Source)
> at
> com.logicalapps.onecenter.webservice.SODWebServiceTest.testBasicService(SODWebServiceTest.java:87)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:324)
> at junit.framework.TestCase.runTest(TestCase.java:154)
> at junit.framework.TestCase.runBare(TestCase.java:127)
> at junit.framework.TestResult$1.protect(TestResult.java:106)
> at junit.framework.TestResult.runProtected(TestResult.java:124)
> at junit.framework.TestResult.run(TestResult.java:109)
> at junit.framework.TestCase.run(TestCase.java:118)
> at junit.framework.TestSuite.runTest(TestSuite.java:208)
> at junit.framework.TestSuite.run(TestSuite.java:203)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTestRunner.run(JUnitTestRunner.java:325)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.executeInVM(JUnitTask.java:848)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:556)
> at
> org.apache.tools.ant.taskdefs.optional.junit.JUnitTask.execute(JUnitTask.java:532)
> at org.apache.tools.ant.Task.perform(Task.java:341)
> at org.apache.commons.jelly.tags.ant.AntTag.doTag(AntTag.java:185)
> at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
> at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
> at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
> at
> org.apache.commons.jelly.tags.core.OtherwiseTag.doTag(OtherwiseTag.java:87)
> at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
> at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
> at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
> at
> org.apache.commons.jelly.tags.core.ChooseTag.doTag(ChooseTag.java:84)
> at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
> at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
> at org.apache.commons.jelly.TagSupport.invokeBody(TagSupport.java:233)
> at org.apache.commons.jelly.tags.core.IfTag.doTag(IfTag.java:88)
> at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:279)
> at org.apache.commons.jelly.impl.ScriptBlock.run(ScriptBlock.java:135)
> at
> org.apache.maven.jelly.tags.werkz.MavenGoalTag.runBodyTag(MavenGoalTag.java:79)
> at
> org.apache.maven.jelly.tags.werkz.MavenGoalTag$MavenGoalAction.performAction(MavenGoalTag.java:110)
> at com.werken.werkz.Goal.fire(Goal.java:639)
> at com.werken.werkz.Goal.attain(Goal.java:575)
> at
> org.apache.maven.plugin.PluginManager.attainGoals(PluginManager.java:671)
> at org.apache.maven.MavenSession.attainGoals(MavenSession.java:263)
> at org.apache.maven.cli.App.doMain(App.java:488)
> at org.apache.maven.cli.App.main(App.java:1239)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:324)
> at com.werken.forehead.Forehead.run(Forehead.java:551)
> at com.werken.forehead.Forehead.main(Forehead.java:581)
> ========
> I can provide more detailed inormation on request. Let me know if I should
> split this into two tickets, since I have both:
> - problem with deserialization of collections of beans
> - viewing the actual AxisError that occurs outside of using debug
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]