AXIS2 is not aware of "is" methods when generating soap messages from JAXB java beans -------------------------------------------------------------------------------------
Key: AXIS2-3723 URL: https://issues.apache.org/jira/browse/AXIS2-3723 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: databinding Affects Versions: nightly Environment: Win XP Pro, JDK 6_04, Tomcat 5.5.26, JAXB 2.1.6 Reporter: Glen Verran Priority: Blocker Fix For: nightly I have an XSD which contains an element of type xs:boolean. This element is called "redirect". I use JAXB 2.1.6 to generate the java beans from the XSD. The methods for the "redirect" variable in the java bean are isRedirect and setRedirect. I created a web service with the method below: public RetrieveConfigurationDataResponse retrieveConfigurationData(RetrieveConfigurationDataRequest req) { RetrieveConfigurationDataResponse rsp = new RetrieveConfigurationDataResponse(); rsp.setData("1234"); rsp.setDataEncodingType(req.getDataEncodingType()); rsp.setEchoData(req.getEchoData()); rsp.setIdentifier(req.getIdentifier()); rsp.setIdentifierType(req.getIdentifierType()); rsp.setRedirect(Boolean.FALSE); rsp.setResponseCode("00"); rsp.setRevision(req.getRevision()); return rsp; } Both the (RetrieveConfigurationDataRequest and RetrieveConfigurationDataResponse are JAXB generated java beans. The RetrieveConfigurationDataResponse class is the one that contains this redirect variable. I generated the client code and went on to test this method to the web service. I got the following AxisFault saying that it could not find the read method for "redirect". Exception in thread "main" org.apache.axis2.AxisFault: org.apache.axis2.AxisFault: can not find read method for : redirect at org.apache.axis2.util.Utils.getInboundFaultFromMessageContext(Utils.java:486) at org.apache.axis2.description.OutInAxisOperationClient.handleResponse(OutInAxisOperation.java:343) at org.apache.axis2.description.OutInAxisOperationClient.send(OutInAxisOperation.java:389) at org.apache.axis2.description.OutInAxisOperationClient.executeImpl(OutInAxisOperation.java:211) at org.apache.axis2.client.OperationClient.execute(OperationClient.java:163) at com.traderoot.webservices.configurationdistribwebservice.ConfigurationDistribWebServiceStub.retrieveConfigurationData(ConfigurationDistribWebServiceStub.java:172) at Test.main(Test.java:23) To confirm my assumptions, I went into the JAXB code and changed the isRedirect method to getRedirect. This fault did not occure. I do not consider this a workaround since JAXB classes are to be untouched. It seems that AXIS2 is not looking for "is" methods when binding the java bean. This is an absoluate blocker and prevents us from being able to use AXIS2. -- This message is automatically generated by JIRA. - You can reply to this email to add a comment to the issue online. --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]