[jira] Commented: (AXIS2-3651) BeanUtil class should try and fill the xsi:type attribute with value from type table before defaulting to class name
[ https://issues.apache.org/jira/browse/AXIS2-3651?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12643497#action_12643497 ] Balaji Hari commented on AXIS2-3651: Where can I get this fix? This has been a blocker issue. Is this integrated in 1.4.1 release? BeanUtil class should try and fill the xsi:type attribute with value from type table before defaulting to class name Key: AXIS2-3651 URL: https://issues.apache.org/jira/browse/AXIS2-3651 Project: Axis 2.0 (Axis2) Issue Type: Improvement Components: databinding Affects Versions: 1.4, 1.3 Environment: Windows XP SP2, Java 6 Reporter: Aaron Gourley Assignee: nadir amra Priority: Minor Fix For: nightly Using the type table to fill the xsi:type attribute would help make it possible to successfully validate SOAP response messages against the WSDL. Although the class name approach may be sufficient for POJO services, it provides meaningless information when other approaches are used. I suggest replacing the following lines of BeanUtil.java // Added objectAttributes as a fix for issues AXIS2-2055 and AXIS2-1899 to // support polymorphism in POJO approach. // For some reason, using QName(Constants.XSI_NAMESPACE, type, xsi) does not generate // an xsi:type attribtue properly for inner objects. So just using a simple QName(type). ArrayList objectAttributes = new ArrayList(); objectAttributes.add(new QName(type)); objectAttributes.add(beanObject.getClass().getName()); With this (or similar ... not sure if qualified check should be there): ArrayList objectAttributes = new ArrayList(); objectAttributes.add(new QName(Constants.XSI_NAMESPACE, type, xsi)); if( typeTable != null qualified ) { QName qNamefortheType = typeTable.getQNamefortheType(beanObject.getClass().getName()); if (qNamefortheType == null) { // Added objectAttributes as a fix for issues AXIS2-2055 and AXIS2-1899 to // support polymorphism in POJO approach. objectAttributes.add(beanObject.getClass().getName()); } else { objectAttributes.add(qNamefortheType); } } else { objectAttributes.add(beanObject.getClass().getName()); } Note that I had no issues with generating the xsi:type attribute for inner elements in my testing (as was mentioned by the existing comment). -- 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]
[jira] Commented: (AXIS2-4093) Elements of subtypes returned in wrong order in webservice response
[ https://issues.apache.org/jira/browse/AXIS2-4093?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=12642060#action_12642060 ] Balaji Hari commented on AXIS2-4093: What time frame are we looking for the 1.5 release? Elements of subtypes returned in wrong order in webservice response --- Key: AXIS2-4093 URL: https://issues.apache.org/jira/browse/AXIS2-4093 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: adb Affects Versions: 1.3 Reporter: Balaji Hari Priority: Critical Fix For: 1.5 When axis service returns elements of subtypes it returns in reverse order, 1. subclass 2. super class. Snippet from WSDL definition: - xs:complexType name=RuleDTO - xs:sequence xs:element minOccurs=0 name=annotation nillable=true type=xs:string / xs:element maxOccurs=unbounded minOccurs=0 name=applicableTrails nillable=true type=xs:int / xs:element minOccurs=0 name=deviceTypeId nillable=true type=xs:int / ... xs:element minOccurs=0 name=subject nillable=true type=ax21:SubjectDTO / /xs:sequence /xs:complexType Definition of SubjectDTO (which has following sub types). xs:complexType name=SubjectDTO - xs:sequence xs:element minOccurs=0 name=caseSensitive type=xs:boolean / xs:element minOccurs=0 name=frequency nillable=true type=xs:int / xs:element minOccurs=0 name=ignoreWhitespace type=xs:boolean / xs:element minOccurs=0 name=key nillable=true type=ax21:KeyDTO / xs:element minOccurs=0 name=COMPONENT_CLASSNAME nillable=true type=xs:string / /xs:sequence /xs:complexType - xs:complexType name=SubjectCollectionDTO - xs:complexContent - xs:extension base=ax21:SubjectDTO - xs:sequence xs:element maxOccurs=unbounded minOccurs=0 name=collection nillable=true type=xs:string / xs:element minOccurs=0 name=contiguous type=xs:boolean / xs:element minOccurs=0 name=ordered type=xs:boolean / /xs:sequence /xs:extension /xs:complexContent /xs:complexType - xs:complexType name=SubjectLinesDTO - xs:complexContent - xs:extension base=ax21:SubjectCollectionDTO xs:sequence / /xs:extension /xs:complexContent /xs:complexType Server Response : return type=com.bmc.bcan.dto.RuleDTO ns1:annotation/ns1:annotation ns1:applicableTrails xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:nil=true / ns1:deviceTypeId0/ns1:deviceTypeId !-- SubType Element -- ns1:subject type=com.bmc.bcan.dto.SubjectLinesDTO ns1:collectionset mls flow full/ns1:collection ns1:collection set mls nde ${global.netflowDestination} ${global.netflowPort} /ns1:collection ns1:collection set mls nde version 5 /ns1:collection ns1:collectionset mls nde enable/ns1:collection ns1:collection set mls agingtime long 64 /ns1:collection ns1:collection set mls agingtime fast 16 0 /ns1:collection ns1:contiguousfalse/ns1:contiguous ns1:orderedfalse/ns1:ordered ns1:caseSensitivefalse/ns1:caseSensitive ns1:frequency2/ns1:frequency ns1:ignoreWhitespacetrue/ns1:ignoreWhitespace ns1:key type=com.bmc.bcan.dto.KeyDTO ns1:keyString458169663-121/ns1:keyString /ns1:key /ns1:subject ns1:substitutionValidation true /ns1:substitutionValidation ns1:trigger xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:nil=true / ns1:violationSeverity5/ns1:violationSeverity /return For SubjectLinesDTO the subelement collection from SubjectCollectionDTO is returned first instead of elements from SubjectDTO (ns1:caseSensitivefalse/ns1:caseSensitive ns1:frequency2/ns1:frequency ns1:ignoreWhitespacetrue/ns1:ignoreWhitespace ns1:key type=com.bmc.bcan.dto.KeyDTO ns1:keyString458169663-121/ns1:keyString /ns1:key) SubjectLinesDTO.Factory.parse in the client generated stub tries to parse the elements in SubjectDTO first and then SubjectLinesDTO This issue is second part of https://issues.apache.org/jira/browse/AXIS2-4092 which happens when type=fully qualified class name is changed to xsi:type=ns:SchemaType (test run) We need a fix
[jira] Created: (AXIS2-4092) Subclass elements in web service response returned with type=fully qualified class name instead of xsi:type=ns:SchemaType
Subclass elements in web service response returned with type=fully qualified class name instead of xsi:type=ns:SchemaType - Key: AXIS2-4092 URL: https://issues.apache.org/jira/browse/AXIS2-4092 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: adb Affects Versions: 1.3 Reporter: Balaji Hari Priority: Critical Axis2 service returns type=com.bmc.bcan.dto.SubjectLinesDTO instead of xsi:type=ns1:SubjectLinesDTO in soap response. This causes issues when the response has elements of sub-types. Snippet from WSDL definition: - xs:complexType name=RuleDTO - xs:sequence xs:element minOccurs=0 name=annotation nillable=true type=xs:string / xs:element maxOccurs=unbounded minOccurs=0 name=applicableTrails nillable=true type=xs:int / xs:element minOccurs=0 name=deviceTypeId nillable=true type=xs:int / ... xs:element minOccurs=0 name=subject nillable=true type=ax21:SubjectDTO / /xs:sequence /xs:complexType Definition of SubjectDTO (which has following sub types). xs:complexType name=SubjectDTO - xs:sequence xs:element minOccurs=0 name=caseSensitive type=xs:boolean / xs:element minOccurs=0 name=frequency nillable=true type=xs:int / xs:element minOccurs=0 name=ignoreWhitespace type=xs:boolean / xs:element minOccurs=0 name=key nillable=true type=ax21:KeyDTO / xs:element minOccurs=0 name=COMPONENT_CLASSNAME nillable=true type=xs:string / /xs:sequence /xs:complexType - xs:complexType name=SubjectCollectionDTO - xs:complexContent - xs:extension base=ax21:SubjectDTO - xs:sequence xs:element maxOccurs=unbounded minOccurs=0 name=collection nillable=true type=xs:string / xs:element minOccurs=0 name=contiguous type=xs:boolean / xs:element minOccurs=0 name=ordered type=xs:boolean / /xs:sequence /xs:extension /xs:complexContent /xs:complexType - xs:complexType name=SubjectLinesDTO - xs:complexContent - xs:extension base=ax21:SubjectCollectionDTO xs:sequence / /xs:extension /xs:complexContent /xs:complexType Server Response : return type=com.bmc.bcan.dto.RuleDTO ns1:annotation/ns1:annotation ns1:applicableTrails xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:nil=true / ns1:deviceTypeId0/ns1:deviceTypeId !-- SubType Element -- ns1:subject type=com.bmc.bcan.dto.SubjectLinesDTO ns1:collectionset mls flow full/ns1:collection ns1:collection set mls nde ${global.netflowDestination} ${global.netflowPort} /ns1:collection ns1:collection set mls nde version 5 /ns1:collection ns1:collectionset mls nde enable/ns1:collection ns1:collection set mls agingtime long 64 /ns1:collection ns1:collection set mls agingtime fast 16 0 /ns1:collection ns1:contiguousfalse/ns1:contiguous ns1:orderedfalse/ns1:ordered ns1:caseSensitivefalse/ns1:caseSensitive ns1:frequency2/ns1:frequency ns1:ignoreWhitespacetrue/ns1:ignoreWhitespace ns1:key type=com.bmc.bcan.dto.KeyDTO ns1:keyString458169663-121/ns1:keyString /ns1:key /ns1:subject ns1:substitutionValidation true /ns1:substitutionValidation ns1:trigger xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:nil=true / ns1:violationSeverity5/ns1:violationSeverity /return The base type in RuleDTO has been defined as SubjectDTO. Since the type attribute is not xsi:type in the client SubjectDTO.Factory.parse() is called which can't find the elements of sub-type Exception in thread main org.apache.axis2.AxisFault: org.apache.axis2.databinding.ADBException: Unexpected subelement collection at org.apache.axis2.AxisFault.makeFault(AxisFault.java:430) at com.bmc.bcan.ws.service.RuleServiceStub.fromOM(RuleServiceStub.java:30216) at com.bmc.bcan.ws.service.RuleServiceStub.getRules(RuleServiceStub.java:498) at com.bmc.bcan.ws.test.RuleServiceTest.main(RuleServiceTest.java:39) Caused by: java.lang.Exception: org.apache.axis2.databinding.ADBException: Unexpected subelement collection at com.bmc.bcan.ws.service.RuleServiceStub$SubjectDTO$Factory.parse(RuleServiceStub.java:20920) at com.bmc.bcan.ws.service.RuleServiceStub$RuleDTO
[jira] Created: (AXIS2-4093) Elements of subtypes returned in wrong order in webservice response
Elements of subtypes returned in wrong order in webservice response --- Key: AXIS2-4093 URL: https://issues.apache.org/jira/browse/AXIS2-4093 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: adb Affects Versions: 1.3 Reporter: Balaji Hari Priority: Critical When axis service returns elements of subtypes it returns in reverse order, 1. subclass 2. super class. Snippet from WSDL definition: - xs:complexType name=RuleDTO - xs:sequence xs:element minOccurs=0 name=annotation nillable=true type=xs:string / xs:element maxOccurs=unbounded minOccurs=0 name=applicableTrails nillable=true type=xs:int / xs:element minOccurs=0 name=deviceTypeId nillable=true type=xs:int / ... xs:element minOccurs=0 name=subject nillable=true type=ax21:SubjectDTO / /xs:sequence /xs:complexType Definition of SubjectDTO (which has following sub types). xs:complexType name=SubjectDTO - xs:sequence xs:element minOccurs=0 name=caseSensitive type=xs:boolean / xs:element minOccurs=0 name=frequency nillable=true type=xs:int / xs:element minOccurs=0 name=ignoreWhitespace type=xs:boolean / xs:element minOccurs=0 name=key nillable=true type=ax21:KeyDTO / xs:element minOccurs=0 name=COMPONENT_CLASSNAME nillable=true type=xs:string / /xs:sequence /xs:complexType - xs:complexType name=SubjectCollectionDTO - xs:complexContent - xs:extension base=ax21:SubjectDTO - xs:sequence xs:element maxOccurs=unbounded minOccurs=0 name=collection nillable=true type=xs:string / xs:element minOccurs=0 name=contiguous type=xs:boolean / xs:element minOccurs=0 name=ordered type=xs:boolean / /xs:sequence /xs:extension /xs:complexContent /xs:complexType - xs:complexType name=SubjectLinesDTO - xs:complexContent - xs:extension base=ax21:SubjectCollectionDTO xs:sequence / /xs:extension /xs:complexContent /xs:complexType Server Response : return type=com.bmc.bcan.dto.RuleDTO ns1:annotation/ns1:annotation ns1:applicableTrails xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:nil=true / ns1:deviceTypeId0/ns1:deviceTypeId !-- SubType Element -- ns1:subject type=com.bmc.bcan.dto.SubjectLinesDTO ns1:collectionset mls flow full/ns1:collection ns1:collection set mls nde ${global.netflowDestination} ${global.netflowPort} /ns1:collection ns1:collection set mls nde version 5 /ns1:collection ns1:collectionset mls nde enable/ns1:collection ns1:collection set mls agingtime long 64 /ns1:collection ns1:collection set mls agingtime fast 16 0 /ns1:collection ns1:contiguousfalse/ns1:contiguous ns1:orderedfalse/ns1:ordered ns1:caseSensitivefalse/ns1:caseSensitive ns1:frequency2/ns1:frequency ns1:ignoreWhitespacetrue/ns1:ignoreWhitespace ns1:key type=com.bmc.bcan.dto.KeyDTO ns1:keyString458169663-121/ns1:keyString /ns1:key /ns1:subject ns1:substitutionValidation true /ns1:substitutionValidation ns1:trigger xmlns:xsi=http://www.w3.org/2001/XMLSchema-instance; xsi:nil=true / ns1:violationSeverity5/ns1:violationSeverity /return For SubjectLinesDTO the subelement collection from SubjectCollectionDTO is returned first instead of elements from SubjectDTO (ns1:caseSensitivefalse/ns1:caseSensitive ns1:frequency2/ns1:frequency ns1:ignoreWhitespacetrue/ns1:ignoreWhitespace ns1:key type=com.bmc.bcan.dto.KeyDTO ns1:keyString458169663-121/ns1:keyString /ns1:key) SubjectLinesDTO.Factory.parse in the client generated stub tries to parse the elements in SubjectDTO first and then SubjectLinesDTO This issue is second part of https://issues.apache.org/jira/browse/AXIS2-4092 which happens when type=fully qualified class name is changed to xsi:type=ns:SchemaType (test run) We need a fix for this as this has been a blocker. Balaji -- 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]
[jira] Created: (AXIS2-4047) Incorrect schema element names
Incorrect schema element names -- Key: AXIS2-4047 URL: https://issues.apache.org/jira/browse/AXIS2-4047 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: wsdl Affects Versions: 1.3, 1.4 Environment: windows xp pro Reporter: Balaji Hari Priority: Critical Attachments: SchemaGenIssue.zip We found this interesting issue in Axis2 1.3 / 1.4. When an abstract class is used to generate WSDL using Java2WSDL the schema type elements corresponding to method arguments are named as param0, param1 whereas when a concrete class is used it is able to retrieve correct parameter names e.g. username, password which are used to generate WSDL. ParamReader.java has issues in retrieving parameter names from abstract class. I have attached eclipse project (TestParamReader.java) SchemaGenIssue.zipwhich retrieves parameter names using abstract class as well as concrete class. Is this a known issue? If no can you provide us a fix? Balaji -- 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]
[jira] Updated: (AXIS2-4047) Incorrect schema element names
[ https://issues.apache.org/jira/browse/AXIS2-4047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Balaji Hari updated AXIS2-4047: --- Attachment: SchemaGenIssue.zip Incorrect schema element names -- Key: AXIS2-4047 URL: https://issues.apache.org/jira/browse/AXIS2-4047 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: wsdl Affects Versions: 1.4, 1.3 Environment: windows xp pro Reporter: Balaji Hari Priority: Critical Attachments: SchemaGenIssue.zip We found this interesting issue in Axis2 1.3 / 1.4. When an abstract class is used to generate WSDL using Java2WSDL the schema type elements corresponding to method arguments are named as param0, param1 whereas when a concrete class is used it is able to retrieve correct parameter names e.g. username, password which are used to generate WSDL. ParamReader.java has issues in retrieving parameter names from abstract class. I have attached eclipse project (TestParamReader.java) SchemaGenIssue.zipwhich retrieves parameter names using abstract class as well as concrete class. Is this a known issue? If no can you provide us a fix? Balaji -- 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]
[jira] Closed: (AXIS2-4047) Incorrect schema element names
[ https://issues.apache.org/jira/browse/AXIS2-4047?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Balaji Hari closed AXIS2-4047. -- Resolution: Won't Fix Thanks for the quick reply. The compiler debug option -g was helpful too! Incorrect schema element names -- Key: AXIS2-4047 URL: https://issues.apache.org/jira/browse/AXIS2-4047 Project: Axis 2.0 (Axis2) Issue Type: Bug Components: wsdl Affects Versions: 1.4, 1.3 Environment: windows xp pro Reporter: Balaji Hari Priority: Critical Attachments: SchemaGenIssue.zip We found this interesting issue in Axis2 1.3 / 1.4. When an abstract class is used to generate WSDL using Java2WSDL the schema type elements corresponding to method arguments are named as param0, param1 whereas when a concrete class is used it is able to retrieve correct parameter names e.g. username, password which are used to generate WSDL. ParamReader.java has issues in retrieving parameter names from abstract class. I have attached eclipse project (TestParamReader.java) SchemaGenIssue.zipwhich retrieves parameter names using abstract class as well as concrete class. Is this a known issue? If no can you provide us a fix? Balaji -- 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]
Re: [Axis2] Secured Axis2-1.3 Client Masks Returned Fault Messages
I am facing the same problem too..Did u have a chance to get any information regarding this issue? Balaji Tim Munro (myDIALS) wrote: Hi All, I have developed an Axis2-1.3 client (with Rampart 1.3, using an xmlbeans proxy) that calls methods on a secured .NET web service service. I can successfully communicate with the .NET service, however when the .NET server returns a valid fault message the xmlbeans proxy client never receives the returned fault string; instead all the client receives is the following message: Must Understand check failed for header http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1. 0.xsd : Security Note that in Axis2-1.2 this was not a problem; my xmlbeans proxy received the correct/expected error string. So, for example, if I call a method on the .NET web service with an invalid parameter in the request document, the .NET web service returns an informative message containing details of the problem. Below is an example of the xml response message received from the .NET server, and to me it appears to be a valid response: ?xml version='1.0' encoding='utf-8'? s:Envelope xmlns:s=http://schemas.xmlsoap.org/soap/envelope/; xmlns:u=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity- utility-1.0.xsd s:Header o:Security xmlns:o=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity- secext-1.0.xsd s:mustUnderstand=1 u:Timestamp u:Id=_0 u:Created2007-10-12T01:02:16.796Z/u:Created u:Expires2007-10-12T01:07:16.796Z/u:Expires /u:Timestamp /o:Security /s:Header s:Body s:Fault faultcodes:UnexpectedFault/faultcode faultstring xml:lang=en-USAn unexpected error has occurred in the service. System.ServiceModel.FaultException`1[MyDials.Common.ServiceFaults.InvalidReq uestFault]: The dimension member 'Midlands' was included in a dimension reference for the 'Products' dimension, but is not valid. (Fault Detail is equal to MyDials.Common.ServiceFaults.InvalidRequestFault)./faultstring /s:Fault /s:Body /s:Envelope When I interact with this returned message (through the xmlbeans proxy), the error message I see is the Must Understand check failed for header ... rather than the value contained in the faultstring elemrnt of the returned document. The issue appears to be that the received message header contains a (valid) timestamp, as indicated above, however the Axis2 response handler never seems to to process this timestamp in the header, meaning that when the AxisEngine.checkMustUnderstand() performs the headerBlock.isProcessed() test, the result is false and so the Must understand check failed ... exception is thrown and my xmlbeans proxy never sees the real faultstring message. I am struggling to understand what is going wrong here ... any guidance on what to fault-find next would be greatly appreciated as after a few days looking at this I am unsure if it is a problem in returned document, or my policy.xml. Thanks, Tim Munro === Below is my policy.xml document: ?xml version=1.0 encoding=UTF-8? wsp:Policy wsu:Id=SigOnly xmlns:wsu=http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurit y-utility-1.0.xsd xmlns:wsp=http://schemas.xmlsoap.org/ws/2004/09/policy; wsp:ExactlyOne wsp:All sp:TransportBinding xmlns:sp=http://schemas.xmlsoap.org/ws/2005/07/securitypolicy; wsp:Policy sp:TransportToken wsp:Policy sp:HttpsToken RequireClientCertificate=false/ /wsp:Policy /sp:TransportToken sp:AlgorithmSuite wsp:Policy sp:Basic256/ /wsp:Policy /sp:AlgorithmSuite sp:Layout wsp:Policy sp:Lax/ /wsp:Policy /sp:Layout sp:IncludeTimestamp/ /wsp:Policy /sp:TransportBinding sp:EndorsingSupportingTokens xmlns:sp=http://schemas.xmlsoap.org/ws/2005/07/securitypolicy; wsp:Policy sp:X509Token
org.apache.axis2.wsdl.codegen.CodeGenerationException: Element QName is null for RateRankError!
Hi, I tried using wsdl2java with no data binding option on the attached wsdl file and ran into following exception. (Axis2 1.2) Exception in thread main org.apache.axis2.wsdl.codegen.CodeGenerationException: org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: Element QName is null for RateRankError! [java] at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:256) [java] at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:32) [java] at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:21) [java] Caused by: org.apache.axis2.wsdl.codegen.CodeGenerationException: java.lang.RuntimeException: Element QName is null for RateRankError! [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.emitSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1281) [java] at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.generate(CodeGenerationEngine.java:238) [java] ... 2 more [java] Caused by: java.lang.RuntimeException: Element QName is null for RateRankError! [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.getFaultParamElements(AxisServiceBasedMultiLanguageEmitter.java:2617) [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.getFaultElement(AxisServiceBasedMultiLanguageEmitter.java:2554) [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.generateMethodElement(AxisServiceBasedMultiLanguageEmitter.java:2118) [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.loadOperations(AxisServiceBasedMultiLanguageEmitter.java:2024) [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.createDOMDocumentForSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1940) [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.writeSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1871) [java] at org.apache.axis2.wsdl.codegen.emitter.AxisServiceBasedMultiLanguageEmitter.emitSkeleton(AxisServiceBasedMultiLanguageEmitter.java:1246) [java] ... 3 more [java] Java Result: 1 I found that the problem is with the soap:fault element. wsdl:message name=RateRankError wsdl:part element=ns3:RateRankError name=errorMessage/ /wsdl:message wsdl:fault message=tns:RateRankError/ I have used the following ant task target name=wsdl2java java classname=org.apache.axis2.wsdl.WSDL2Java fork=true classpathref=jarfiles arg line=-uri ${wsdl.uri}/ arg line=-ss/ arg line=-sd/ arg line=-p fmweb.wps.websvc/ arg line=-d none/ arg line=-o ./temp/ arg line=-S ./temp/ /java /target Does code generation tool handle this case? Anyone faced similar issues? http://www.nabble.com/file/p12370480/RateRankService.wsdl RateRankService.wsdl http://www.nabble.com/file/p12370480/RateRankError.xsd RateRankError.xsd Thanks in advance Balaji -- View this message in context: http://www.nabble.com/org.apache.axis2.wsdl.codegen.CodeGenerationException%3A-Element-QName-is-null-for-RateRankError%21-tf4342522.html#a12370480 Sent from the Axis - Dev mailing list archive at Nabble.com. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]