5 Replies Latest reply on Oct 28, 2005 10:18 AM by thomas.diesler

    Namespace problem with JBossWS generated SOAP

    posselt

      Hi there,

      Unfortunately the soap has been treated as html...

      so again:

      The working soap (by JBossNet/AXIS)

      <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <soapenv:Body>
      < QuickOrder xmlns="http://api.company.com/webtrust/order">
      < Request>


      The bad SOAP (by wscompile/JBoss-AXIS):

      <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <soapenv:Body>
      <ns1:QuickOrder xmlns:ns1="http://api.company.com/webtrust/order">
      < Request>

        • 1. Re: Namespace problem with JBossWS generated SOAP
          posselt

          Hi,

          I got it working by patching the wsdl. I simply added the "ns1:" to all elements. However, that means that I have to patch the wsdl any time I get a new one from our partner. Also, the "Ns1" ist added to the method names in the stubs generated by wscompile.

          The method formerly called "setFoo" is now called "setNs1Foo". That seems to be pretty ugly to mee. Isn't there a better way?

          I'll go online with this hack and hope that either someone gives me any hints about this or that future JBoss versions will address this problem, maybe with a replacement for wscompile?

          Greetings,
          Dietmar

          • 2. Re: Namespace problem with JBossWS generated SOAP
            thomas.diesler

            You need to show us the unpatched wsdl, then we can work out which SOAP message is the correct one.

            You can use the [ code ] marker when you post XML.

            • 3. Re: Namespace problem with JBossWS generated SOAP
              posselt

              Hi,

              Sorry for the delay. I was on vacation :-)

              <?xml version="1.0" encoding="utf-8"?>
              <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:conv="http://www.openuri.org/2002/04/soap/conversation/" xmlns:cw="http://www.openuri.org/2002/04/wsdl/conversation/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:jms="http://www.openuri.org/2002/04/wsdl/jms/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:s0="http://api.geotrust.com/webtrust/order" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" targetNamespace="http://api.geotrust.com/webtrust/order">
               <types>
               <s:schema xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:ord="http://api.geotrust.com/webtrust/order" elementFormDefault="qualified" targetNamespace="http://api.geotrust.com/webtrust/order">
               <s:element name="QuickInvite">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:QuickInviteInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="QuickInviteResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="QuickInviteResult" type="ord:QuickInviteOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="QuickOrder">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:QuickOrderInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="QuickOrderResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="QuickOrderResult" type="ord:QuickOrderOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="TrueBizIDOrder">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:TrueBizIDOrderInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="TrueBizIDOrderResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="TrueBizIDOrderResult" type="ord:TrueBizIDOrderOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="TrueSiteOrder">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:TrueSiteOrderInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="TrueSiteOrderResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="TrueSiteOrderResult" type="ord:TrueSiteOrderOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ShowReplayTokens">
               <s:complexType>
               <s:sequence>
               <s:element name="PartnerCode" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ShowReplayTokensResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="ShowReplayTokensResult" type="ord:ArrayOfString" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ModifyOrder">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:ModifyOrderInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ModifyOrderResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="ModifyOrderResult" type="ord:ModifyOrderOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="QuickPaymentsOrder">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:QuickPaymentsOrderInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="QuickPaymentsOrderResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="QuickPaymentsOrderResult" type="ord:QuickPaymentsOrderOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ResendEmail">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:ResendEmailInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ResendEmailResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="ResendEmailResult" type="ord:ResendEmailOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ValidateOrderParameters">
               <s:complexType>
               <s:sequence>
               <s:element name="Request" type="ord:ValidateOrderParametersInput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:element name="ValidateOrderParametersResponse">
               <s:complexType>
               <s:sequence>
               <s:element name="ValidateOrderParametersResult" type="ord:ValidateOrderParametersOutput" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:element>
               <s:complexType name="QuickInviteInput">
               <s:complexContent>
               <s:extension base="ord:Pin1Request">
               <s:sequence>
               <s:element name="RequestorEmail" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:extension>
               </s:complexContent>
               </s:complexType>
               <s:complexType name="Pin1Request">
               <s:sequence>
               <s:element name="TechContact" type="ord:Contact" minOccurs="0"/>
               <s:element name="OrderRequestHeader" type="ord:orderRequestHeader" minOccurs="0"/>
               <s:element name="PartnerTags" type="ord:ArrayOfPartnerTag" minOccurs="0"/>
               <s:element name="OrderParameters" type="ord:orderParameters" minOccurs="0"/>
               <s:element name="BillingContact" type="ord:Contact" minOccurs="0"/>
               <s:element name="PaymentInfo" type="ord:paymentInfo" minOccurs="0"/>
               <s:element name="AdminContact" type="ord:Contact" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="Contact">
               <s:sequence>
               <s:element name="Phone" type="s:string" minOccurs="0"/>
               <s:element name="Email" type="s:string" minOccurs="0"/>
               <s:element name="LastName" type="s:string" minOccurs="0"/>
               <s:element name="FirstName" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="orderRequestHeader">
               <s:sequence>
               <s:element name="AuthToken" type="ord:authToken" minOccurs="0"/>
               <s:element name="PartnerCode" type="s:string" minOccurs="0"/>
               <s:element name="PartnerOrderID" type="s:string" minOccurs="0"/>
               <s:element name="ReplayToken" type="s:string" minOccurs="0"/>
               <s:element name="UseReplayToken" type="s:boolean" minOccurs="0"/>
               <s:element name="ProductCode" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="authToken">
               <s:sequence>
               <s:element name="Password" type="s:string" minOccurs="0"/>
               <s:element name="UserName" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ArrayOfPartnerTag">
               <s:sequence>
               <s:element name="PartnerTag" type="ord:PartnerTag" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="PartnerTag">
               <s:sequence>
               <s:element name="TagName" type="s:string" minOccurs="0"/>
               <s:element name="TagValue" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="orderParameters">
               <s:sequence>
               <s:element name="CUCertificate" type="s:string" minOccurs="0"/>
               <s:element name="ValidityPeriod" type="s:int" minOccurs="0"/>
               <s:element name="CUIndicator" type="s:boolean" minOccurs="0"/>
               <s:element name="ContractID" type="s:string" minOccurs="0"/>
               <s:element name="DNSNames" type="s:string" minOccurs="0"/>
               <s:element name="EmailLanguageCode" type="s:string" minOccurs="0"/>
               <s:element name="ReissuanceInsuranceIndicator" type="s:boolean" minOccurs="0"/>
               <s:element name="SpecialInstructions" type="s:string" minOccurs="0"/>
               <s:element name="Method" type="s:string" minOccurs="0"/>
               <s:element name="WildCard" type="s:boolean" minOccurs="0"/>
               <s:element name="InstallationSupportIndicator" type="s:boolean" minOccurs="0"/>
               <s:element name="ServerCount" type="s:int" minOccurs="0"/>
               <s:element name="RenewalBehavior" type="s:string" minOccurs="0"/>
               <s:element name="WebServerType" type="s:string" minOccurs="0"/>
               <s:element name="RenewalIndicator" type="s:boolean" minOccurs="0"/>
               <s:element name="CSR" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="paymentInfo">
               <s:sequence>
               <s:element name="Coupon" type="s:string" minOccurs="0"/>
               <s:element name="PurchaseOrder" type="s:string" minOccurs="0"/>
               <s:element name="CreditCardInfo" type="ord:creditCardInfo" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="creditCardInfo">
               <s:sequence>
               <s:element name="CreditCardNumber" type="s:string" minOccurs="0"/>
               <s:element name="CreditCardType" type="s:string" minOccurs="0"/>
               <s:element name="CreditCardName" type="s:string" minOccurs="0"/>
               <s:element name="CreditCardCVV" type="s:string" minOccurs="0"/>
               <s:element name="CreditCardExpDate" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="QuickInviteOutput">
               <s:sequence>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="orderResponseHeader">
               <s:sequence>
               <s:element name="Timestamp" type="s:dateTime" minOccurs="0"/>
               <s:element name="PartnerOrderID" type="s:string" minOccurs="0"/>
               <s:element name="SuccessCode" type="s:int"/>
               <s:element name="Errors" type="ord:ArrayOfError" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ArrayOfError">
               <s:sequence>
               <s:element name="Error" type="ord:Error" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="Error">
               <s:sequence>
               <s:element name="ErrorMessage" type="s:string" minOccurs="0"/>
               <s:element name="ErrorField" type="s:string" minOccurs="0"/>
               <s:element name="ErrorCode" type="s:int"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="QuickOrderInput">
               <s:complexContent>
               <s:extension base="ord:Pin1Request">
               <s:sequence>
               <s:element name="ApproverEmail" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:extension>
               </s:complexContent>
               </s:complexType>
               <s:complexType name="QuickOrderOutput">
               <s:sequence>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               <s:element name="GeoTrustOrderID" type="s:int"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="TrueBizIDOrderInput">
               <s:complexContent>
               <s:extension base="ord:TrueOrderInput">
               <s:sequence>
               <s:element name="OrderParameters" type="ord:orderParameters" minOccurs="0"/>
               </s:sequence>
               </s:extension>
               </s:complexContent>
               </s:complexType>
               <s:complexType name="TrueOrderInput">
               <s:sequence>
               <s:element name="TechContact" type="ord:Contact" minOccurs="0"/>
               <s:element name="OrderRequestHeader" type="ord:orderRequestHeader" minOccurs="0"/>
               <s:element name="PartnerTags" type="ord:ArrayOfPartnerTag" minOccurs="0"/>
               <s:element name="OrganizationInfo" type="ord:organizationInfo" minOccurs="0"/>
               <s:element name="BillingContact" type="ord:Contact" minOccurs="0"/>
               <s:element name="PaymentInfo" type="ord:paymentInfo" minOccurs="0"/>
               <s:element name="AdminContact" type="ord:Contact" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="organizationInfo">
               <s:sequence>
               <s:element name="DUNS" type="s:string" minOccurs="0"/>
               <s:element name="OrganizationName" type="s:string" minOccurs="0"/>
               <s:element name="OrganizationAddress" type="ord:organizationAddress" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="organizationAddress">
               <s:sequence>
               <s:element name="Region" type="s:string" minOccurs="0"/>
               <s:element name="Phone" type="s:string" minOccurs="0"/>
               <s:element name="Fax" type="s:string" minOccurs="0"/>
               <s:element name="AddressLine2" type="s:string" minOccurs="0"/>
               <s:element name="AddressLine3" type="s:string" minOccurs="0"/>
               <s:element name="AddressLine1" type="s:string" minOccurs="0"/>
               <s:element name="PostalCode" type="s:string" minOccurs="0"/>
               <s:element name="City" type="s:string" minOccurs="0"/>
               <s:element name="Country" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="TrueBizIDOrderOutput">
               <s:sequence>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               <s:element name="GeoTrustOrderID" type="s:int"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="TrueSiteOrderInput">
               <s:complexContent>
               <s:extension base="ord:TrueOrderInput">
               <s:sequence>
               <s:element name="TrueSiteOrderParameters" type="ord:trueSiteOrderParameters" minOccurs="0"/>
               </s:sequence>
               </s:extension>
               </s:complexContent>
               </s:complexType>
               <s:complexType name="trueSiteOrderParameters">
               <s:sequence>
               <s:element name="SpecialInstructions" type="s:string" minOccurs="0"/>
               <s:element name="ContractID" type="s:string" minOccurs="0"/>
               <s:element name="RenewalBehavior" type="s:string" minOccurs="0"/>
               <s:element name="Method" type="s:string" minOccurs="0"/>
               <s:element name="DomainName" type="s:string" minOccurs="0"/>
               <s:element name="RenewalIndicator" type="s:boolean" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="TrueSiteOrderOutput">
               <s:sequence>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               <s:element name="GeoTrustOrderID" type="s:int"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ArrayOfString">
               <s:sequence>
               <s:element name="String" type="s:string" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ModifyOrderInput">
               <s:sequence>
               <s:element name="OrderRequestHeader" type="ord:orderRequestHeader" minOccurs="0"/>
               <s:element name="ModifyOrderReasonMessage" type="s:string" minOccurs="0"/>
               <s:element name="ModifyOrderOperation" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ModifyOrderOutput">
               <s:sequence>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="QuickPaymentsOrderInput">
               <s:sequence>
               <s:element name="PaymentInfo" type="ord:paymentInfo" minOccurs="0"/>
               <s:element name="OrderRequestHeader" type="ord:orderRequestHeader" minOccurs="0"/>
               <s:element name="MerchantData" type="ord:merchantData" minOccurs="0"/>
               <s:element name="QuickPaymentsOrderInfo" type="ord:quickPaymentsOrderInfo" minOccurs="0"/>
               <s:element name="GatewayInfo" type="ord:gatewayInfo" minOccurs="0"/>
               <s:element name="MerchantBillingContact" type="ord:merchantBillingContact" minOccurs="0"/>
               <s:element name="MerchantTechContact" type="ord:merchantTechContact" minOccurs="0"/>
               <s:element name="MerchantAdminContact" type="ord:merchantAdminContact" minOccurs="0"/>
               <s:element name="MerchantAccountInfo" type="ord:merchantAccountInfo" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="merchantData">
               <s:sequence>
               <s:element name="business_zip" type="s:string" minOccurs="0"/>
               <s:element name="business_address" type="s:string" minOccurs="0"/>
               <s:element name="business_fax" type="s:string" minOccurs="0"/>
               <s:element name="business_legalname" type="s:string" minOccurs="0"/>
               <s:element name="business_country" type="s:string" minOccurs="0"/>
               <s:element name="business_city" type="s:string" minOccurs="0"/>
               <s:element name="business_phone" type="s:string" minOccurs="0"/>
               <s:element name="DUNS" type="s:string" minOccurs="0"/>
               <s:element name="business_state" type="s:string" minOccurs="0"/>
               <s:element name="website_url" type="s:string" minOccurs="0"/>
               <s:element name="business_name" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="quickPaymentsOrderInfo">
               <s:sequence>
               <s:element name="MerchantAccount" type="s:boolean"/>
               <s:element name="SupportOption" type="s:string" minOccurs="0"/>
               <s:element name="Processor" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="gatewayInfo">
               <s:sequence>
               <s:element name="tid" type="s:string" minOccurs="0"/>
               <s:element name="locationnumber" type="s:string" minOccurs="0"/>
               <s:element name="sic" type="s:string" minOccurs="0"/>
               <s:element name="CreditCardsAllowed" type="ord:creditCardsAllowed" minOccurs="0"/>
               <s:element name="agentnumberaccount" type="s:string" minOccurs="0"/>
               <s:element name="bankid" type="s:string" minOccurs="0"/>
               <s:element name="mid" type="s:string" minOccurs="0"/>
               <s:element name="storenumber" type="s:string" minOccurs="0"/>
               <s:element name="terminalnumber" type="s:string" minOccurs="0"/>
               <s:element name="chainnumber" type="s:string" minOccurs="0"/>
               <s:element name="originatingemail" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="creditCardsAllowed">
               <s:sequence>
               <s:element name="allowVisa" type="s:boolean"/>
               <s:element name="allowAmex" type="s:boolean"/>
               <s:element name="allowDiscover" type="s:boolean"/>
               <s:element name="allowJCB" type="s:boolean"/>
               <s:element name="allowDiners" type="s:boolean"/>
               <s:element name="allowMC" type="s:boolean"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="merchantBillingContact">
               <s:sequence>
               <s:element name="billing_city" type="s:string" minOccurs="0"/>
               <s:element name="billing_zip" type="s:string" minOccurs="0"/>
               <s:element name="Email" type="s:string" minOccurs="0"/>
               <s:element name="LastName" type="s:string" minOccurs="0"/>
               <s:element name="Phone" type="s:string" minOccurs="0"/>
               <s:element name="billing_address" type="s:string" minOccurs="0"/>
               <s:element name="billing_state" type="s:string" minOccurs="0"/>
               <s:element name="FirstName" type="s:string" minOccurs="0"/>
               <s:element name="billing_country" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="merchantTechContact">
               <s:sequence>
               <s:element name="Password" type="s:string" minOccurs="0"/>
               <s:element name="Phone" type="s:string" minOccurs="0"/>
               <s:element name="Email" type="s:string" minOccurs="0"/>
               <s:element name="LastName" type="s:string" minOccurs="0"/>
               <s:element name="UserName" type="s:string" minOccurs="0"/>
               <s:element name="FirstName" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="merchantAdminContact">
               <s:sequence>
               <s:element name="Phone" type="s:string" minOccurs="0"/>
               <s:element name="Email" type="s:string" minOccurs="0"/>
               <s:element name="LastName" type="s:string" minOccurs="0"/>
               <s:element name="FirstName" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="merchantAccountInfo">
               <s:sequence>
               <s:element name="internet_swipe_pct" type="s:string" minOccurs="0"/>
               <s:element name="processed_with_whom" type="s:string" minOccurs="0"/>
               <s:element name="trade_phone2" type="s:string" minOccurs="0"/>
               <s:element name="principal_license_state" type="s:string" minOccurs="0"/>
               <s:element name="card_swipe_pct" type="s:string" minOccurs="0"/>
               <s:element name="how_long" type="s:string" minOccurs="0"/>
               <s:element name="type_of_ownership" type="s:string" minOccurs="0"/>
               <s:element name="bank_account" type="s:string" minOccurs="0"/>
               <s:element name="principal_zip" type="s:string" minOccurs="0"/>
               <s:element name="principal_residence_phone" type="s:string" minOccurs="0"/>
               <s:element name="trade_phone" type="s:string" minOccurs="0"/>
               <s:element name="principal_property" type="s:string" minOccurs="0"/>
               <s:element name="principal_address" type="s:string" minOccurs="0"/>
               <s:element name="bank_phone" type="s:string" minOccurs="0"/>
               <s:element name="manually_keyed_pct" type="s:string" minOccurs="0"/>
               <s:element name="trade_name" type="s:string" minOccurs="0"/>
               <s:element name="delivery_time" type="s:string" minOccurs="0"/>
               <s:element name="principal_drivers_license" type="s:string" minOccurs="0"/>
               <s:element name="principal_state" type="s:string" minOccurs="0"/>
               <s:element name="num_of_locations" type="s:string" minOccurs="0"/>
               <s:element name="trade_contact" type="s:string" minOccurs="0"/>
               <s:element name="principal_city" type="s:string" minOccurs="0"/>
               <s:element name="principal_address_years" type="s:string" minOccurs="0"/>
               <s:element name="time_in_biz_yrs" type="s:string" minOccurs="0"/>
               <s:element name="trade_contact2" type="s:string" minOccurs="0"/>
               <s:element name="principal_ssn" type="s:string" minOccurs="0"/>
               <s:element name="principal_address_months" type="s:string" minOccurs="0"/>
               <s:element name="principal_name" type="s:string" minOccurs="0"/>
               <s:element name="anticipated_monthly_volume" type="s:string" minOccurs="0"/>
               <s:element name="trade_account" type="s:string" minOccurs="0"/>
               <s:element name="biz_hours" type="s:string" minOccurs="0"/>
               <s:element name="principal_date_of_birth" type="s:string" minOccurs="0"/>
               <s:element name="tax_id" type="s:string" minOccurs="0"/>
               <s:element name="processed_before" type="s:string" minOccurs="0"/>
               <s:element name="business_type" type="s:string" minOccurs="0"/>
               <s:element name="trade_name2" type="s:string" minOccurs="0"/>
               <s:element name="average_sale_size" type="s:string" minOccurs="0"/>
               <s:element name="service_or_product_type" type="s:string" minOccurs="0"/>
               <s:element name="bank_name" type="s:string" minOccurs="0"/>
               <s:element name="ownership_other" type="s:string" minOccurs="0"/>
               <s:element name="principal_pct_ownership" type="s:string" minOccurs="0"/>
               <s:element name="principal_title" type="s:string" minOccurs="0"/>
               <s:element name="terminated_by_processor" type="s:string" minOccurs="0"/>
               <s:element name="time_in_biz_months" type="s:string" minOccurs="0"/>
               <s:element name="trade_account2" type="s:string" minOccurs="0"/>
               <s:element name="bank_contact" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="QuickPaymentsOrderOutput">
               <s:sequence>
               <s:element name="QuickPaymentsResponse" type="ord:quickPaymentsResponse" minOccurs="0"/>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="quickPaymentsResponse">
               <s:sequence>
               <s:element name="TID" type="s:string" minOccurs="0"/>
               <s:element name="SzReturnMessage" type="s:string" minOccurs="0"/>
               <s:element name="OrderID" type="s:int"/>
               <s:element name="Szhtmlserialnumber" type="s:string" minOccurs="0"/>
               <s:element name="Szloginserialnumber" type="s:string" minOccurs="0"/>
               <s:element name="Userpass" type="s:string" minOccurs="0"/>
               <s:element name="MID" type="s:string" minOccurs="0"/>
               <s:element name="SzReturnCode" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ResendEmailInput">
               <s:sequence>
               <s:element name="OrderRequestHeader" type="ord:orderRequestHeader" minOccurs="0"/>
               <s:element name="ResendEmailType" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ResendEmailOutput">
               <s:sequence>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ValidateOrderParametersInput">
               <s:sequence>
               <s:element name="OrderRequestHeader" type="ord:orderRequestHeader" minOccurs="0"/>
               <s:element name="OrderParameters" type="ord:orderParameters" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="ValidateOrderParametersOutput">
               <s:sequence>
               <s:element name="OrderResponseHeader" type="ord:orderResponseHeader" minOccurs="0"/>
               <s:element name="Price" type="s:string" minOccurs="0"/>
               <s:element name="CUInfo" type="ord:cuInfo" minOccurs="0"/>
               <s:element name="RenewalInfo" type="ord:renewalInfo" minOccurs="0"/>
               <s:element name="ValidityPeriod" type="s:int"/>
               <s:element name="ParsedCSR" type="ord:parsedCSR" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="cuInfo">
               <s:sequence>
               <s:element name="CUIssuer" type="s:string" minOccurs="0"/>
               <s:element name="CUIndicator" type="s:boolean"/>
               <s:element name="CUSerialNumber" type="s:string" minOccurs="0"/>
               <s:element name="CUCertificate" type="s:string" minOccurs="0"/>
               <s:element name="CUExpriationDate" type="s:string" minOccurs="0"/>
               <s:element name="CUMonths" type="s:int"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="renewalInfo">
               <s:sequence>
               <s:element name="RenewalProductCode" type="s:string" minOccurs="0"/>
               <s:element name="RenewalExpirationDate" type="s:string" minOccurs="0"/>
               <s:element name="RenewIndicator" type="s:boolean"/>
               <s:element name="RenewalMonths" type="s:int"/>
               <s:element name="RenewalSerialNumber" type="s:string" minOccurs="0"/>
               <s:element name="RenewalOrderID" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               <s:complexType name="parsedCSR">
               <s:sequence>
               <s:element name="Organization" type="s:string" minOccurs="0"/>
               <s:element name="DomainName" type="s:string" minOccurs="0"/>
               <s:element name="Email" type="s:string" minOccurs="0"/>
               <s:element name="HasBadExtensions" type="s:boolean"/>
               <s:element name="Country" type="s:string" minOccurs="0"/>
               <s:element name="IsValidQuickDomainName" type="s:boolean"/>
               <s:element name="IsValidTrueDomainName" type="s:boolean"/>
               <s:element name="Locality" type="s:string" minOccurs="0"/>
               <s:element name="OrganizationUnit" type="s:string" minOccurs="0"/>
               <s:element name="State" type="s:string" minOccurs="0"/>
               </s:sequence>
               </s:complexType>
               </s:schema>
              
               </types>
               <message name="QuickInviteSoapIn">
               <part name="parameters" element="s0:QuickInvite"/>
               </message>
               <message name="QuickInviteSoapOut">
               <part name="parameters" element="s0:QuickInviteResponse"/>
               </message>
               <message name="QuickOrderSoapIn">
               <part name="parameters" element="s0:QuickOrder"/>
               </message>
               <message name="QuickOrderSoapOut">
               <part name="parameters" element="s0:QuickOrderResponse"/>
               </message>
               <message name="TrueBizIDOrderSoapIn">
               <part name="parameters" element="s0:TrueBizIDOrder"/>
               </message>
               <message name="TrueBizIDOrderSoapOut">
               <part name="parameters" element="s0:TrueBizIDOrderResponse"/>
               </message>
               <message name="TrueSiteOrderSoapIn">
               <part name="parameters" element="s0:TrueSiteOrder"/>
               </message>
               <message name="TrueSiteOrderSoapOut">
               <part name="parameters" element="s0:TrueSiteOrderResponse"/>
               </message>
               <message name="ShowReplayTokensSoapIn">
               <part name="parameters" element="s0:ShowReplayTokens"/>
               </message>
               <message name="ShowReplayTokensSoapOut">
               <part name="parameters" element="s0:ShowReplayTokensResponse"/>
               </message>
               <message name="ModifyOrderSoapIn">
               <part name="parameters" element="s0:ModifyOrder"/>
               </message>
               <message name="ModifyOrderSoapOut">
               <part name="parameters" element="s0:ModifyOrderResponse"/>
               </message>
               <message name="QuickPaymentsOrderSoapIn">
               <part name="parameters" element="s0:QuickPaymentsOrder"/>
               </message>
               <message name="QuickPaymentsOrderSoapOut">
               <part name="parameters" element="s0:QuickPaymentsOrderResponse"/>
               </message>
               <message name="ResendEmailSoapIn">
               <part name="parameters" element="s0:ResendEmail"/>
               </message>
               <message name="ResendEmailSoapOut">
               <part name="parameters" element="s0:ResendEmailResponse"/>
               </message>
               <message name="ValidateOrderParametersSoapIn">
               <part name="parameters" element="s0:ValidateOrderParameters"/>
               </message>
               <message name="ValidateOrderParametersSoapOut">
               <part name="parameters" element="s0:ValidateOrderParametersResponse"/>
               </message>
               <portType name="orderSoap">
               <operation name="QuickInvite">
               <input message="s0:QuickInviteSoapIn"/>
               <output message="s0:QuickInviteSoapOut"/>
               </operation>
               <operation name="QuickOrder">
               <input message="s0:QuickOrderSoapIn"/>
               <output message="s0:QuickOrderSoapOut"/>
               </operation>
               <operation name="TrueBizIDOrder">
               <input message="s0:TrueBizIDOrderSoapIn"/>
               <output message="s0:TrueBizIDOrderSoapOut"/>
               </operation>
               <operation name="TrueSiteOrder">
               <input message="s0:TrueSiteOrderSoapIn"/>
               <output message="s0:TrueSiteOrderSoapOut"/>
               </operation>
               <operation name="ShowReplayTokens">
               <documentation>This a diagnostic operation that is not available in the production environment.</documentation>
               <input message="s0:ShowReplayTokensSoapIn"/>
               <output message="s0:ShowReplayTokensSoapOut"/>
               </operation>
               <operation name="ModifyOrder">
               <input message="s0:ModifyOrderSoapIn"/>
               <output message="s0:ModifyOrderSoapOut"/>
               </operation>
               <operation name="QuickPaymentsOrder">
               <input message="s0:QuickPaymentsOrderSoapIn"/>
               <output message="s0:QuickPaymentsOrderSoapOut"/>
               </operation>
               <operation name="ResendEmail">
               <input message="s0:ResendEmailSoapIn"/>
               <output message="s0:ResendEmailSoapOut"/>
               </operation>
               <operation name="ValidateOrderParameters">
               <input message="s0:ValidateOrderParametersSoapIn"/>
               <output message="s0:ValidateOrderParametersSoapOut"/>
               </operation>
               </portType>
               <binding name="orderSoap" type="s0:orderSoap">
               <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="document"/>
               <operation name="QuickInvite">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/QuickInvite" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="QuickOrder">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/QuickOrder" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="TrueBizIDOrder">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/TrueBizIDOrder" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="TrueSiteOrder">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/TrueSiteOrder" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="ShowReplayTokens">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/ShowReplayTokens" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="ModifyOrder">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/ModifyOrder" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="QuickPaymentsOrder">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/QuickPaymentsOrder" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="ResendEmail">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/ResendEmail" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               <operation name="ValidateOrderParameters">
               <soap:operation soapAction="http://api.geotrust.com/webtrust/order/ValidateOrderParameters" style="document"/>
               <input>
               <soap:body use="literal"/>
               </input>
               <output>
               <soap:body use="literal"/>
               </output>
               </operation>
               </binding>
               <service name="order">
               <documentation>The Order Web Service provides operations that apply to creating and managing orders for GeoTrust products. All operations in this Web Service are available only to legitimate GeoTrust partners. Please contact <a href="http://www.geotrust.com">GeoTrust</a> to register as a partner. Note also that certain operations require additional permission and agreement.<br> <br></documentation>
               <port name="orderSoap" binding="s0:orderSoap">
               <soap:address location="#TO_BE_REPLACED_BY_TARGET_URL#"/>
               </port>
               </service>
              </definitions>
              


              • 4. Re: Namespace problem with JBossWS generated SOAP
                jjautz

                Hi,

                with Dietmar's hack I was able to call a webservice that required messages to be formatted according to elementFormDefault="qualified" .

                Originally, the soap message generated by JBoss 4.0.2 looked like this:

                 <soapenv:Body>
                 <ns1:UpdateByOrderId xmlns:ns1="http://ntmefisto/MefistoWS">
                 <techid>66</techid>
                 <enable>true</enable>
                 </ns1:UpdateByOrderId>
                 </soapenv:Body>
                


                This message was rejected by the server because the nested elements (techid and enable) were not prefixed with the correct namespace.

                After modifying the WSDL file and changing the complex type definition from ...

                 <s:complexType>
                 <s:sequence>
                 <s:element minOccurs="1" maxOccurs="1" name="techid" type="s:long" />
                 <s:element minOccurs="1" maxOccurs="1" name="enable" type="s:boolean" />
                 </s:sequence>
                


                ... into ...

                 <s:complexType>
                 <s:sequence>
                 <s:element minOccurs="1" maxOccurs="1" name="ns1:techid" type="s:long" />
                 <s:element minOccurs="1" maxOccurs="1" name="ns1:enable" type="s:boolean" />
                 </s:sequence>
                


                ... everything worked because the message looked like this:

                 <soapenv:Body>
                 <ns1:UpdateByOrderId xmlns:ns1="http://ntmefisto/MefistoWS">
                 <ns1:techid>66</ns1:techid>
                 <ns1:enable>true</ns1:enable>
                 </ns1:UpdateByOrderId>
                 </soapenv:Body>
                


                This is ugly but effective (and was tested with JBoss 4.0.2 only).
                HTH someone ;)


                • 5. Re: Namespace problem with JBossWS generated SOAP
                  thomas.diesler