Uploaded image for project: 'CXF'
  1. CXF
  2. CXF-5306

Soap body in header

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 2.7.6
    • 2.7.8, 2.6.11
    • None
    • None
    • Unknown

    Description

      I am using apache-cxf-2.7.6. I generated soap client from wsdl. In Java code I set values for the request object and send request. Soap xml request is not valid. In the header is request body and soap:body is empty. This is generated xml which is not valid:

      <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
         <soap:Header>
            <ns7:MetaHeader xmlns:ns12="http://www.csob.cz/common/v1" xmlns:ns11="http://www.csob.cz/infrastructure/MessageDelivery/SendSMS/res/v1" xmlns:ns10="http://www.csob.cz/infrastructure/MessageDelivery/SendSMS/req/v1" xmlns:ns9="http://www.csob.cz/infrastructure/SMS/v1" xmlns:ns8="http://www.csob.cz/infrastructure/SMS/core" xmlns:ns7="http://ed6.kbc.com/metaheader.1" xmlns:ns6="http://www.csob.cz/common/core" xmlns:ns5="http://services.csob.cz/base_v1" xmlns:ns4="http://www.csob.cz/infrastructure/MessageDelivery/SendEmail/res/v1" xmlns:ns3="http://www.csob.cz/infrastructure/Email/v1" xmlns:ns2="http://www.csob.cz/infrastructure/MessageDelivery/SendEmail/req/v1" xmlns="http://www.csob.cz/infrastructure/Email/core">
               <ns2:EmailToFields>
                  <EmailToField>test@test.sk</EmailToField>
               </ns2:EmailToFields>
               <EmailSubject>test</EmailSubject>
               <EmailFromField>test@test.sk</EmailFromField>
               <ns2:EmailBody>Hello World!</ns2:EmailBody>
               <DeliveryPriority>1</DeliveryPriority>
            </ns7:MetaHeader>
         </soap:Header>
         <soap:Body/>
      </soap:Envelope>
      

      Here is the code how I am sending request:

            MessageDelivery messageDelivery = new MessageDelivery();
      			SendEmailPortType client = messageDelivery.getSendEmailPortTypeBindingPort(); 
      
      			org.apache.cxf.endpoint.Client clientEnd = ClientProxy.getClient(client);
      			clientEnd.getOutInterceptors().add(new MyLogInterceptor());
      			
      			SendEmailReq sendEmailReq = new SendEmailReq();
      			sendEmailReq.setEmailSubject("test");
      			sendEmailReq.setEmailBody(body);
      			sendEmailReq.setEmailFromField("test@test.sk");
      			sendEmailReq.setEmailToFields(new SendEmailReq.EmailToFields());
      			sendEmailReq.getEmailToFields().getEmailToField().add("test@test.sk");
      			sendEmailReq.setDeliveryPriority(new Integer(1));
            
      			client.sendEmailV1(sendEmailReq);
      

      Attachments

        1. MessageDelivery.wsdl
          6 kB
          matej
        2. MessageDelivery.zip
          351 kB
          matej

        Activity

          People

            dkulp Daniel Kulp
            matej matej
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: