ws-wsif-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Castro (JIRA)" <wsif-...@ws.apache.org>
Subject [jira] Resolved: (WSIF-88) Collection/javabean deserialization not working
Date Thu, 24 Aug 2006 20:18:06 GMT
     [ 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: wsif-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: wsif-dev-help@ws.apache.org


Mime
View raw message