[jboss-jira] [JBoss JIRA] Commented: (JBAS-5337) XmlElementWrapper + XmlElement annotations do not work on incoming SOAP
sector (JIRA)
jira-events at lists.jboss.org
Sat Mar 22 01:03:40 EDT 2008
[ http://jira.jboss.com/jira/browse/JBAS-5337?page=comments#action_12404142 ]
sector commented on JBAS-5337:
------------------------------
Here is the complete Java file mentioned above:
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlElementWrapper;
import java.util.HashSet;
import java.util.Set;
public class DeleteLabelsRequest extends BaseRequestObject {
private static final long serialVersionUID = 3214567659875678760L;
private Set<Long> ids;
public DeleteLabelsRequest() {
serviceKey = "delete.labels";
}
@XmlElementWrapper(name="ids")
@XmlElement(name="id")
public Set<Long> getIds() {
return ids == null ? new HashSet<Long>() : ids;
}
public void setIds(Set<Long> ids) {
this.ids = ids;
}
}
> XmlElementWrapper + XmlElement annotations do not work on incoming SOAP
> -----------------------------------------------------------------------
>
> Key: JBAS-5337
> URL: http://jira.jboss.com/jira/browse/JBAS-5337
> Project: JBoss Application Server
> Issue Type: Bug
> Security Level: Public(Everyone can see)
> Components: Web Services
> Affects Versions: JBossAS-4.2.2.GA
> Environment: WIndowsXP / FreeBSD
> Reporter: sector
> Assigned To: Thomas Diesler
> Priority: Critical
>
> I am using document based web services on top of EJB3 and I recently upgraded from 4.0.5.GA to 4.2.2.GA.
> After the upgrade the following method stopped working when I was sending data to the JBoss from my Flex application:
> @XmlElementWrapper(name="ids")
> @XmlElement(name="id")
> public Set<Long> getIds() {
> return ids == null ? new HashSet<Long>() : ids;
> }
> Here is the SOAP that was sent across:
> <?xml version="1.0" encoding="utf-8"?>
> <SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"><SOAP-ENV:Body><ns0:executeDeleteLabels xmlns:ns0="http://com.coldcore/diva2/main-service"><arg0><site>ac1</site><ids><id>62653</id></ids></arg0></ns0:executeDeleteLabels></SOAP-ENV:Body></SOAP-ENV:Envelope>
> "ids" set in the method above was always null on 4.2.2.GA, and worked as expected on 4.0.5.GA
> After trying to find a solution in the internet I found that this might be caused by JBossXB, so I replaced all the "jboss-xml-binding.jar" in 4.2.2.GA with older versions from 4.0.5.GA (I also replaced all the jaxb-xxx.jar just in case). And it worked! The method returned "ids" as expected. I assume that "jboss-xml-binding.jar" under 4.2.2.GA is bugged.
--
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
More information about the jboss-jira
mailing list