You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by "Andreas Veithen (JIRA)" <ji...@apache.org> on 2009/06/22 22:27:07 UTC
[jira] Resolved: (AXIS2-4402) ADB fails to parse anyType with empty
string
[ https://issues.apache.org/jira/browse/AXIS2-4402?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Andreas Veithen resolved AXIS2-4402.
------------------------------------
Resolution: Fixed
Fix Version/s: 1.6
The problem with empty values is fixed by r787379.
I believe that the problem with null values has been fixed previously by AXIS2-4273.
> ADB fails to parse anyType with empty string
> --------------------------------------------
>
> Key: AXIS2-4402
> URL: https://issues.apache.org/jira/browse/AXIS2-4402
> Project: Axis 2.0 (Axis2)
> Issue Type: Bug
> Components: adb
> Affects Versions: 1.5, 1.4.1
> Reporter: Andreas Veithen
> Assignee: Andreas Veithen
> Fix For: 1.6
>
>
> Initially posted by Boris Klug on the mailing list: http://markmail.org/thread/ttag7rc32uf2x7o5
> Hi!
> I created a wsdl which contains a attribute/value pair where the
> value is definied as xsd:anyType:
> <xs:complexType name="ZAttributeValue">
> <xs:sequence>
> <xs:element name="name" type="xs:string" />
> <xs:element name="displayName" nillable="true" type="xs:string" />
> <xs:element name="value" nillable="true" type="xs:anyType" />
> <xs:element name="className" nillable="true" type="xs:string" />
> </xs:sequence>
> </xs:complexType>
> Now I used wsdl2java to create client and server code using adb data binding.
> When value is "" (=empty string), the client throws this exception:
> Exception in thread "main" org.apache.axis2.AxisFault: Current state END_ELEMENT is not among the statesCHARACTERS, COMMENT, CDATA, SPACE, ENTITY_REFERENCE, DTD valid for getText()
> at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> at de.mypackage.ZederbasicServiceStub.fromOM(ZederbasicServiceStub.java:8846)
> at de.mypackage.ZederbasicServiceStub.getZEDERObjects(ZederbasicServiceStub.java:1028)
> at ZederBasicClientTest.main(ZederBasicClientTest.java:36)
> Caused by: java.lang.IllegalStateException: Current state END_ELEMENT is not among the statesCHARACTERS, COMMENT, CDATA, SPACE, ENTITY_REFERENCE, DTD valid for getText()
> at com.sun.org.apache.xerces.internal.impl.XMLStreamReaderImpl.getText(XMLStreamReaderImpl.java:1052)
> at org.apache.axiom.om.impl.llom.OMStAXWrapper.getText(OMStAXWrapper.java:418)
> at org.apache.axis2.databinding.utils.ConverterUtil.getAnyTypeObject(ConverterUtil.java:1528)
> at de.debeka.repository.zws
> In this case, the soap message looks like this:
> <attributes xmlns="http://model.zws2.boq.debeka.gen/xsd">
> <name>HINWEIS</name>
> <displayName>Hinweis</displayName>
> <value xmlns:s45="http://www.w3.org/2001/XMLSchema-instance" xmlns:s46="http://www.w3.org/2001/XMLSchema" s45:type="s46:string">
> </value>
> <className>java.lang.String</className>
> </attributes>
> When value is set to null, I get this exception:
> Exception in thread "main" org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException: Unexpected subelement value
> at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430)
> at de.mypackage.ZederbasicServiceStub.fromOM(ZederbasicServiceStub.java:8846)
> at de.mypackage.ZederbasicServiceStub.getZEDERObjects(ZederbasicServiceStub.java:1028)
> at ZederBasicClientTest.main(ZederBasicClientTest.java:36)
> Caused by: java.lang.Exception: org.apache.axis2.databinding.ADBException: Unexpected subelement value
> at de.mypackage.ZederbasicServiceStub$ZAttributeValue$Factory.parse(ZederbasicServiceStub.java:2583)
> at de.mypackage.ZederbasicServiceStub$ZDataObject$Factory.parse(ZederbasicServiceStub.java:7596)
> at de.mypackage.ZederbasicServiceStub$GetZEDERObjectsResponse$Factory.parse(ZederbasicServiceStub.java:4833)
> at de.mypackage.ZederbasicServiceStub.fromOM(ZederbasicServiceStub.java:8833)
> ... 2 more
> Caused by: org.apache.axis2.databinding.ADBException: Unexpected subelement value
> at de.mypackage.ZederbasicServiceStub$ZAttributeValue$Factory.parse(ZederbasicServiceStub.java:2569)
> ... 5 more
> The soap message is:
> <attributes xmlns="http://model.zws2.boq.debeka.gen/xsd">
> <name>KLASSE</name>
> <displayName xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="1" />
> <value xmlns:s29="http://www.w3.org/2001/XMLSchema-instance" xmlns:s30="http://www.w3.org/2001/XMLSchema" s29:type="s30:string">C_Jobplan</value>
> <className>java.lang.Integer</className>
> </attributes>
> I tried Axis2 1.4.1 and the new 1.5 version. The whole problem with nil and
> empty string values only exists with anyType, not if the element is declared
> as string or something else.
> I really need anyType here.
> Thank you for your help in advance.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.