[JBoss JIRA] Updated: (JBWS-1079) Incorrect WSDL to Java mapping for anonymous struct.
by Thomas Diesler (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-1079?page=all ]
Thomas Diesler updated JBWS-1079:
---------------------------------
Fix Version/s: jbossws-1.0.5
> Incorrect WSDL to Java mapping for anonymous struct.
> ----------------------------------------------------
>
> Key: JBWS-1079
> URL: http://jira.jboss.com/jira/browse/JBWS-1079
> Project: JBoss Web Services
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: wstools
> Affects Versions: jbossws-1.0.1, jbossws-1.0.0
> Reporter: Darran Lofthouse
> Assigned To: Darran Lofthouse
> Fix For: jbossws-1.2.0, jbossws-1.0.5
>
>
> When running wsdl to java for a wsdl that contains a complex type that contains an anonymous struct the class generated for the anonymous struct is incorrect.
> <xsd:complexType name="Person">
> <xsd:sequence>
> <xsd:element name="Address">
> <xsd:complexType>
> <xsd:sequence>
> <xsd:element name="Address1" />
> </xsd:sequence>
> </xsd:complexType>
> </xsd:element>
> </xsd:sequence>
> </xsd:complexType>
> The above example would generate an class with the name 'PersonAddress'.
> From the jax-rpc specification (section 4.2.3) : -
> " An XML struct maps to a JavaBeans class with the same name as the type of the XML struct. If the struct is anonymous, then the name of the nearest enclosing xsd:element, xsd:complexType or xsd:simpleType is used instead."
> So the name of the generated type should be Address.
> The generation of the jaxrpc-mapping actually does assume the generated class was generated with the name 'Address' so the code generation and jaxrpc-mapping generation are out of synch.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years
[JBoss JIRA] Updated: (JBWS-723) Protect access to wsdl
by Thomas Diesler (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-723?page=all ]
Thomas Diesler updated JBWS-723:
--------------------------------
Fix Version/s: jbossws-1.0.5
> Protect access to wsdl
> ----------------------
>
> Key: JBWS-723
> URL: http://jira.jboss.com/jira/browse/JBWS-723
> Project: JBoss Web Services
> Issue Type: Task
> Security Level: Public(Everyone can see)
> Components: jaxrpc
> Reporter: Thomas Diesler
> Assigned To: Thomas Diesler
> Fix For: jbossws-1.2.0, jbossws-1.0.5
>
>
> Hello,
> the reason for protecting the wsdl file, is that the wsdl file can give
> valuable information for starting a Web Service related attack,
> according to the bibliography (see for example: Hacking Exposed, Web Applications, Scambray J., Shema M., McGraw Hill; Hacking Exposed,
> J2EE & Java, Taylor B., Buege R., Layman A., McGraw Hill).
> Spyros Halkidis
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years
[JBoss JIRA] Updated: (JBWS-800) ClassCastException when trying to marshal a SybaseTimestamp
by Thomas Diesler (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-800?page=all ]
Thomas Diesler updated JBWS-800:
--------------------------------
Fix Version/s: jbossws-1.0.5
> ClassCastException when trying to marshal a SybaseTimestamp
> -----------------------------------------------------------
>
> Key: JBWS-800
> URL: http://jira.jboss.com/jira/browse/JBWS-800
> Project: JBoss Web Services
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: jaxrpc
> Affects Versions: jbossws-1.0.0.CR4
> Environment: Windows XP, JBoss 4.0.4.CR2
> Reporter: Chris Baxter
> Assigned To: Thomas Diesler
> Fix For: jbossws-1.2.0, jbossws-1.0.5
>
>
> I have a EJB3 persistent bean mapped to a Sybase DB table. This table has datetime column that I have mapped back to a java.util.Date property on the persistent bean. This same bean class is returned from a webservice call. On JBoss 4.0.3SP1 (using Axis), I had no issues returning this object from my finder call. Now, when I switch to JBoss 4.0.4CR2 (using JBossWS), I get the following exception:
> Caused by: java.lang.ClassCastException: com.sybase.jdbc3.tds.SybTimestamp
> at org.jboss.xb.binding.SimpleTypeBindings.marshal(SimpleTypeBindings.java:1150)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalCharacters(XercesXsMarshaller.java:1169)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalSimpleType(XercesXsMarshaller.java:451)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElementType(XercesXsMarshaller.java:405)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElement(XercesXsMarshaller.java:380)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElementOccurence(XercesXsMarshaller.java:886)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalParticle(XercesXsMarshaller.java:823)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalModelGroupSequence(XercesXsMarshaller.java:1102)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalModelGroup(XercesXsMarshaller.java:1057)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalParticle(XercesXsMarshaller.java:729)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalComplexType(XercesXsMarshaller.java:685)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElementType(XercesXsMarshaller.java:414)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElement(XercesXsMarshaller.java:380)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElementOccurence(XercesXsMarshaller.java:886)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalParticle(XercesXsMarshaller.java:810)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalModelGroupSequence(XercesXsMarshaller.java:1102)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalModelGroup(XercesXsMarshaller.java:1057)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalParticle(XercesXsMarshaller.java:729)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalComplexType(XercesXsMarshaller.java:685)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElementType(XercesXsMarshaller.java:414)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElement(XercesXsMarshaller.java:380)
> at org.jboss.xb.binding.XercesXsMarshaller.marshalElementOccurence(XercesXsMarshaller.java:886)
> at org.jboss.xb.binding.XercesXsMarshaller.marshallInternal(XercesXsMarshaller.java:275)
> at org.jboss.xb.binding.XercesXsMarshaller.marshal(XercesXsMarshaller.java:222)
> at org.jboss.ws.jaxb.JAXBMarshallerImpl.marshal(JAXBMarshallerImpl.java:172)
> at org.jboss.ws.jaxrpc.encoding.JAXBSerializer.serialize(JAXBSerializer.java:100)
> at org.jboss.ws.soap.SOAPContentElement.getXMLFragment(SOAPContentElement.java:172)
> at org.jboss.ws.soap.SOAPContentElement.expandToDOM(SOAPContentElement.java:844)
> at org.jboss.ws.soap.SOAPContentElement.getChildNodes(SOAPContentElement.java:761)
> at org.jboss.util.xml.DOMWriter.printInternal(DOMWriter.java:201)
> at org.jboss.util.xml.DOMWriter.printInternal(DOMWriter.java:260)
> at org.jboss.util.xml.DOMWriter.printInternal(DOMWriter.java:260)
> at org.jboss.util.xml.DOMWriter.print(DOMWriter.java:177)
> at org.jboss.util.xml.DOMWriter.printNode(DOMWriter.java:126)
> at org.jboss.ws.server.ServiceEndpoint.postProcessResponse(ServiceEndpoint.java:306)
> ... 23 more
> In looking at the source code, I think I see why there may be a problem:
> else if(typeCode == XS_DATETIME)
> {
> Calendar c;
> if(value.getClass() == java.util.Date.class)
> {
> c = Calendar.getInstance();
> c.clear();
> c.setTime((java.util.Date)value);
> }
> else
> {
> c = (Calendar)value;
> }
> result = marshalDateTime(c);
> }
> The SybaseTimestamp class extends java.sql.Timestamp which in turn extends java.util.Date. That first 'if' should hit, but it won't because SybaseTimestamp.class != java.util.Date.class. Instead, I think the if statement should be:
> if(java.util.Date.class.isAssignableFrom(value.getClass()))
> I made this change and recompiled and everything works as expected now.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years
[JBoss JIRA] Updated: (JBWS-434) Support sequences of anys
by Thomas Diesler (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-434?page=all ]
Thomas Diesler updated JBWS-434:
--------------------------------
Fix Version/s: jbossws-1.0.5
> Support sequences of anys
> -------------------------
>
> Key: JBWS-434
> URL: http://jira.jboss.com/jira/browse/JBWS-434
> Project: JBoss Web Services
> Issue Type: Feature Request
> Security Level: Public(Everyone can see)
> Components: jaxrpc
> Reporter: Thomas Diesler
> Assigned To: Alexey Loubyansky
> Priority: Critical
> Fix For: jbossws-1.2.0, jbossws-1.0.5
>
>
> Francisco wrote:
> Are there plans for supporting sequences of anys? One of my grad students is working on WS transactions, which use things like
> <xsd:sequence>
> <xsd:any namespace="##other" processContents="lax"
> minOccurs="0" maxOccurs="unbounded"/>
> </xsd:sequence>
> His work should help us to get JBWS-36 done. I expect him to implement at least WS-Coordination and WS-AtomicTransaction, which should be (mostly) WS layers over the existing DTM code.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years
[JBoss JIRA] Updated: (JBWS-1285) java.lang.NullPointerException is thrown when the soap encoded array size is 0 on the return path
by Thomas Diesler (JIRA)
[ http://jira.jboss.com/jira/browse/JBWS-1285?page=all ]
Thomas Diesler updated JBWS-1285:
---------------------------------
Fix Version/s: jbossws-1.0.5
> java.lang.NullPointerException is thrown when the soap encoded array size is 0 on the return path
> --------------------------------------------------------------------------------------------------
>
> Key: JBWS-1285
> URL: http://jira.jboss.com/jira/browse/JBWS-1285
> Project: JBoss Web Services
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: jaxrpc
> Affects Versions: jbossws-1.0.2
> Environment: windows, linux, jdk1.5
> Reporter: George Gan
> Fix For: jbossws-1.2.0, jbossws-1.0.5
>
> Attachments: SOAPBindingProvider.java
>
>
> java.lang.NullPointerException
> at org.jboss.ws.jaxrpc.CallImpl.invokeInternal(CallImpl.java:718)
> at org.jboss.ws.jaxrpc.CallImpl.invoke(CallImpl.java:404)
> at org.jboss.ws.jaxrpc.CallProxy.invoke(CallProxy.java:148)
> at $Proxy132.compoundSearch(Unknown Source)
> at mil.dcgs.mdf.webservice.legacy.spi.WebServiceCatalogProvider.performSearch(WebServiceCatalogProvider.java:301)
> ... 40 more
> Caused by: java.lang.NullPointerException
> at org.jboss.ws.binding.soap.SOAPBindingProvider.getParameterFromMessage(SOAPBindingProvider.java:736)
> at org.jboss.ws.binding.soap.SOAPBindingProvider.unbindResponseMessage(SOAPBindingProvider.java:519)
> at org.jboss.ws.jaxrpc.CallImpl.invokeInternal(CallImpl.java:702)
> ... 44 more
> The exception is caused by array size = 0. The patched code is attached.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.jboss.com/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
19 years