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] Created: (WSIF-88) Collection/javabean deserialization not working
Date Thu, 24 Aug 2006 06:49:44 GMT
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