SOAP in XI: message use="encoded" and binding/@style="rpc"

Hi
Hope somebody who is familiar with XIs SOAP implementation could give the answer for my questions. Problem is that the SOAP server is not working but I am afraid that the reasons are not really simple.
In our company we have to provide some SOAP services. I have entered as much as I could in IR ... including a simple scenario. Then imported the scenario to ID and the wizard created a number of agreements and determinations...
As I need to describe the service to external parties, then I used IDs Web Service definition tool to generate the WSDL.
But as the external messaging framework (for us a preprogrammed SOAP client) is fixed, I noticed that there are some differences that might matter.
XI generated WSDL where SOAP binding has
wsdl:binding/soap:binding/@style="document" but I would need it to be "rpc"
And the second thing is that in binding message bodies have attribute @use="literal" but as the messages should have several parts then it should be "encoded" (and encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"
also is needed then).
Could somebody explain if these may be the reasons why the soap server does not work. And if there is a way to define soap interface so that it would have above mentioned properties as needed.
A easy question also... I would need for a method to have an empty message... inside soap body there should be just a tag with the message name and no content. But I can not figure out how to create a message type with no datatype.
Thanks for any input!

Hi, Stefan
Thanks for the answer. To clear my questions: we want to deploy XI as the SOAP server (sry I have not figured out if it is a sender or receiver channel by name - all this inbound-outbound naming in XI is quite complex). Our SOAP server/XI is actually  just one part of a big SOAP network and MAFIA it uses rpc styled SOAP messages.
The note is really useful, but still it does not give any hint how to make a RPC styled SOAP interface. So the problem is still up for me. As I am not very familiar with WSDL bindings and SOAP... for the message it self, is there any difference as for the RPC vs DOCUMENT style is discussed? Is it possible that the physical structure of a SOAP envelope could be the same?
And the second question: is there a way in IR to define several parts for a message. Something like:
<message name="isiku_andmed">
  <part name="paring" type="tns:isiku_andmed_paring" />
  <part name="keha" type="tns:isiku_andmed_keha" />
</message>

Similar Messages

  • QT SDK. Use encoder and decoder simultaneously

    We develop a software for video conversion. When we tried to convert QT DV to QT DV with different settings the SDK don't work properly. I guess that some conflict occurs when we use encoder and decoder simultaneously.
    Is is known bug? Is there any workaround?

    http://jakarta.apache.org/commons/codec/

  • How to use JDBC Positional Binding Style & ExecuteWithParams?

    Can anyone provide any help here including any documentation on how to configure this (I've checked online help and the developer guide.)
    When defining multiple Bind Position variables on a View Object (using sql statement binding style: JDBC Positional), should I defined multiple bind variable names? Otherwise, if I don't, when I use ExecuteWithParams operation to create the data control, only one input variable field is displayed. I can get a single bind position variable to work, but am struggling on how to configure / get multiple bind position variables to work with ExecuteWithParams.
    Here's my current configuration:
    1. Define View Object with two JDBC Positional Binding Parameters
    -- Bind Variables: name=parm1 (???should I define a second bind variable name???)
    -- Bind Positions = 0,1
    -- SQL Statement add another position var in where clause: "match (zip) against (CONCAT(?,'*') IN BOOLEAN MODE) and "match (name) against (CONCAT(?,'*') IN BOOLEAN MODE)
    2. On a JSF page, drag ExecuteWithParams operation from data control onto the JSF page. If I have defined only one bind variable name, only one input field is displayed (and one field label that I defined for that bind variable), but I need two input fields - one for each bind position variable. How do I set this up?
    Back-end Database is MySQL 5.0.1 which is why I am using binding stye JDBC positional.
    Thanks, Tom
    Message was edited by:
    javaX

    I did some more testing and the problem is that the queries work with one bind position variable but not with two. I created two simple view objects off of the same entity object to test:
    #1 - ViewObject with one bind position variable - where clause: where id > ?
    #2 - ViewObject with two bind position variables - where clause: where id > ? and id < ?
    I created two separate .jspx pages, view1.jspx (one input field) and view2.jspx (two input fields), for each view object by dragging ExecuteWithParams operation onto the JSF page.
    The .jspx page with one input field works (returns result sets.) The view2.jspx page with two input fields does not work - the query does not return any result sets (no errors produced, it just does not return any rows) - I've tested my query outside of jdeveloper and it works fine. I also tried switching my inputs to make sure I did not have an illogical query (i.e., id >100 and id< 1).
    Is there anything different / extra I need to do to use two bind position variables?
    I'm STUCK HERE.
    Everything in this simple test was identical except for using 2 input variables versus 1.
    Technology stack is: jdeveloper 10.1.3, jsf/ADF BC, mySQL 5.01
    Since I now understand what the problem is better, I'm going to re-post this as a new topic that more appropriately describes the problem, "Queries not working with multiple bind position variables?"
    Message was edited by:
    javaX

  • How to call a webservice with SOAP Binding Style RPC

    Hi Guys,
    I'm pretty new to the LiveCycle ES product and I'm trying to call a web service that is of SOAP binding style 'RPC'. After some research I found out that Adobe LC ES only support WSDL files of doc/literal type.
    My question is, is there a workaround for calling RPC style web services? can RPC style web services be converted into doc/literal type?
    Any information regarding this would be greatly appreciated.
    Kazz.

    Hello,
    I had the same problem and I've regenerated my WSDL ( Apache Axis ) with docu/litteral parameters.
    I think it's the only way...
    thomas

  • Why CBO don't use function-base index when I use like and bind variable

    Hello
    I have litle problem with function-base index and like with bind variable.
    When I use like with bind variable, the CBO don't use my function-base index.
    For example when I create table and index:
    ALTER SESSION SET NLS_SORT='BINARY_CI';
    ALTER SESSION SET NLS_COMP='LINGUISTIC';
    alter session set nls_language='ENGLISH';
    -- DROP TABLE TEST1;
    CREATE TABLE TEST1 (K1 VARCHAR2(32));
    create index test1_idx on test1(nlssort(K1,'nls_sort=BINARY_CI'));
    INSERT INTO TEST1
    SELECT OBJECT_NAME FROM ALL_OBJECTS;
    COMMIT;
    When I run:
    ALTER SESSION SET NLS_SORT='BINARY_CI';
    ALTER SESSION SET NLS_COMP='LINGUISTIC';
    SELECT * FROM TEST1 WHERE K1 = 'abcd';
    or
    SELECT * FROM TEST1 WHERE K1 LIKE 'abcd%';
    CBO use index.
    PLAN_TABLE_OUTPUT
    SQL_ID 4vrmp7cshbvqy, child number 1
    SELECT * FROM TEST1 WHERE K1 LIKE 'abcd%'
    Plan hash value: 1885706448
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | | | 1 (100)| |
    | 1 | TABLE ACCESS BY INDEX ROWID| TEST1 | 2 | 98 | 1 (0)| 00:00:01 |
    |* 2 | INDEX RANGE SCAN | TEST1_IDX | 2 | | 1 (0)| 00:00:01 |
    Predicate Information (identified by operation id):
    2 - access("TEST1"."SYS_NC00002$">=HEXTORAW('6162636400') AND
    "TEST1"."SYS_NC00002$"<HEXTORAW('6162636500') )
    but when I run
    SELECT * FROM TEST1 WHERE K1 LIKE :1;
    CBO don't use index
    PLAN_TABLE_OUTPUT
    SQL_ID 9t461s1669gru, child number 0
    SELECT * FROM TEST1 WHERE K1 LIKE :1
    Plan hash value: 4122059633
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | | | 89 (100)| |
    |* 1 | TABLE ACCESS FULL| TEST1 | 2 | 48 | 89 (3)| 00:00:02 |
    Predicate Information (identified by operation id):
    1 - filter("K1" LIKE :1)
    What should I change to force CBO to use index.
    I don't wont use index hint in query.
    My oracle version:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
    PL/SQL Release 11.2.0.1.0 - Production
    CORE     11.2.0.1.0     Production
    TNS for 64-bit Windows: Version 11.2.0.1.0 - Production
    NLSRTL Version 11.2.0.1.0 - Production

    OK. But why if I create normal index (create index test1_idx on test1(K1)) and return to default nls settings this same query use index.
    PLAN_TABLE_OUTPUT
    SQL_ID 9t461s1669gru, child number 0
    SELECT * FROM TEST1 WHERE K1 LIKE :1
    Plan hash value: 598212486
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | | | 1 (100)| |
    |* 1 | INDEX RANGE SCAN| TEST1_IDX | 1 | 18 | 1 (0)| 00:00:01 |
    Predicate Information (identified by operation id):
    1 - access("K1" LIKE :1)
    filter("K1" LIKE :1)
    Note
    - dynamic sampling used for this statement (level=2)
    when index is function-base (create index test1_idx on test1(nlssort(K1,'nls_sort=BINARY_CI')))
    PLAN_TABLE_OUTPUT
    SQL_ID 9t461s1669gru, child number 1
    SELECT * FROM TEST1 WHERE K1 LIKE :1
    Plan hash value: 4122059633
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | | | 89 (100)| |
    |* 1 | TABLE ACCESS FULL| TEST1 | 3 | 54 | 89 (3)| 00:00:02 |
    Predicate Information (identified by operation id):
    1 - filter("K1" LIKE :1)
    Note
    - dynamic sampling used for this statement (level=2)
    when I create index with upper function "index test1_idx on test1(upper(K1))" the query use index
    SELECT * FROM TEST1 WHERE upper(K1) LIKE :1
    Plan hash value: 1885706448
    | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time |
    | 0 | SELECT STATEMENT | | | | 1 (100)| |
    | 1 | TABLE ACCESS BY INDEX ROWID| TEST1 | 4481 | 157K| 1 (0)| 00:00:01 |
    |* 2 | INDEX RANGE SCAN | TEST1_IDX | 806 | | 1 (0)| 00:00:01 |
    Predicate Information (identified by operation id):
    2 - access("TEST1"."SYS_NC00002$" LIKE :1)
    filter("TEST1"."SYS_NC00002$" LIKE :1)
    Note
    - dynamic sampling used for this statement (level=2)

  • How to access SOAP message using JAXP and SOAP class?

    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
    DocumentBuilder b = factory.newDocumentBuilder();
    FileInputStream fr = new FileInputStream(args[1]);
    Document doc = b.parse(fr);
    Envelope msgEnv = Envelope.unmarshall (doc.getDocumentElement()); <---
    the exception raised:
    java.lang.IllegalArgumentException: Root element of a SOAP message must be: 'htt
    p://schemas.xmlsoap.org/soap/envelope/:Envelope'
    And the xml file is:
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"...>
    </env:Envelope>

    The problem is that your DocumentBuilderFactory is not set to be namespace aware. If add a call to factory.setNamespaceAware(true) that should fix your problem.

  • Time capsule unexpected error message using maverick and utility 6.3

    I have a TC 3TB new in last year. I had it set up a to join my home wireless network, it is connected via ethernet to my iMac, and it has been working fine. I updated to mavericks last week and everything was still working fine. Until yesterday. Now my TC is not recognized. I've tried to hard reset it several times and set it up to join as before, I've tried to restore previous settings, and set up a new network, none of these have worked. I continue to get the same message, "an unexpected error occurred" and to try again.
    Any suggestions?

    AirPort Utility won't let me change the router mode. In fact, I can't even get to the menu shown in the picture you've posted. The button "Other Options", if this should be the way, is innactive...
    You need to get in.. connect by ethernet dongle.. and make sure you have an IP from the TC..turn off wireless in the MBPr.
    Then if you cannot get into the device do a factory reset.
    See instructions on reset.. http://support.apple.com/kb/ht3728
    In simple terms.. hold in reset and THEN power on the TC.. keep holding reset until the front led flashes rapidly .. about 10sec. no data is lost from hard disk.
    Select the TC in the airport utility
    Info on the unit appears. Then click on edit.
    That gets you to the manual setup screen..
    One last question. For option 1 (all I need is using TC just to back up stuff from my MBPr automatically via Time Machine), should I connect the TP-Link modem/router to the WAN port of TC or to one of its 3 ethernet ports?
    Thanks again
    In bridge it makes no difference.. but by convention we use WAN to connect to modem.. it helps to keep things clear when you troubleshoot.. but when you bridge.. WAN port is assigned to LAN.
    Spell checking is always fun here.. but I refuse to follow the US convention even if normal spell check is forced to US on the website.. my posts always have lots of spelling errors. !!!

  • Help setting Parameters using JDBC and Bind Variables for Oracle List

    I fully understand the concept of using Bind Variables when using JDBC to avoid hard parses everytime my SQL statement is executed when only a certain value changes. For example, perhaps I have the following statement:
    PreparedStatement ps = con.prepareStatement("select salary from employees where employee_id = ?");
    I would then set the value of the question mark (the first and in this case only parameter) using:
    ps.getStmt().setString(1,empId1);
    That is assuming I have the variable empId1 populated with what I want. Anyway, my question has to do with Oracle lists. In other words, if I am just executing the statement against the db, it might look like:
    select salary from employees where employee_id in ('123','456','789');
    I still want to use bind variables and I can do it in JDBC with something like:
    select salary from employees where employee_id in ('123','456','789');
    ps.getStmt().setString(1,empId1);
    ps.getStmt().setString(2,empId2);
    ps.getStmt().setString(3,empId3);
    BUT, what if I just want to construct my list of ids upfront as a string and do something like:
    select salary from employees where employee_id in (?)
    ps.getStmt().setString(1,listOfEmpIds);where listOfEmpIds would look something like '123','456','789'.
    That's what I want to do but it doesn't work. It would be treating the list as a single parameter as opposed to lots of individual parameters. Can someone please tell me the syntax for this if it is possible? I have tried where XX in (?) and where XX in ? (and the string I substitute has the parenthesis in it), but neither work.
    Thank you for your help.

    I always build the list myself.
    You could, however, pass the list as a varchar to a stored proc and then have the stored proc parse (or dynamically execute) using it.
    The second method might even be faster although I would suspect that is only going to be the case if the list is very large. Or it might not.

  • Interesting Error message using ORACLE and java

    Hi Everyone.
    i'm using Java beans, JSP, Oracle db.
    I'm using classes that work on other projects.
    has anyone seen this error before ?
    Error Message: Fail to convert to internal representation
    Stack Trace: java.sql.SQLException: Fail to convert to internal representation
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:168)
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:210)
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:273)
         at oracle.jdbc.driver.OracleStatement.getLongValue(OracleStatement.java:3194)
         at oracle.jdbc.driver.OracleStatement.getIntValue(OracleStatement.java:3141)
         at oracle.jdbc.driver.OracleResultSetImpl.getInt(OracleResultSetImpl.java:329)
         at oracle.jdbc.driver.OracleResultSet.getInt(OracleResultSet.java:1420)
         at weblogic.jdbcbase.pool.ResultSet.getInt(ResultSet.java:290)
         at justice_center.database.JuvenileNetworkBean2.getVecLogIn(JuvenileNetworkBean2.java:273)
         at jsp_servlet._justice_center._juvenile._juv_login._jspService(_juv_login.java:110)
         at weblogic.servlet.jsp.JspBase.service(JspBase.java:27)
         at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:106)
         at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:907)
         at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:851)
         at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:252)
         at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:364)
         at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:252)
         at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:129)
    what do you think error is when you look at this trace?
    stephen

    woops never mind
    this s[6] = Integer.toString(rs.getInt("fieldname"));
    should have been this
    this s[6] = rs.getString("fieldname");
    stephen

  • Error message using Drag And Drop

    I receive the following error when trying to use a customized drag implementation on a JList. I can't find any reference to DataTransferer and the like, so I don't know where to look for the problem. Any help would be much appreciated.
    java.lang.NullPointerException
    at sun.awt.datatransfer.DataTransferer.getFormatsForFlavors(DataTransfer
    er.java:708)
    at sun.awt.windows.WDataTransferer.getFormatsForFlavors(WDataTransferer.
    java:127)
    at sun.awt.datatransfer.DataTransferer.getFormatsForTransferable(DataTra
    nsferer.java:687)
    at sun.awt.dnd.SunDragSourceContextPeer.startDrag(SunDragSourceContextPe
    er.java:101)
    at java.awt.dnd.DragSource.startDrag(DragSource.java:305)
    at java.awt.dnd.DragSource.startDrag(DragSource.java:402)
    at java.awt.dnd.DragGestureEvent.startDrag(DragGestureEvent.java:221)

    Here is the code that I use for drag and drop between 2 Jlist's. It has always worked for me. You may have to tweek it a little to work for you. For instance I don't have it removing the item from the original lst when it is dragged to the new list. Anyway hope this helps you out.
    public static class                     DList extends JList implements DropTargetListener{
            private DropTarget dt;
              DList() {
                   this.setDragEnabled(true);
                            dt = new DropTarget(this, this);
            public void dragEnter(DropTargetDragEvent event) {        }
            public void dragExit(DropTargetEvent event) {        }
            public void dragOver(DropTargetDragEvent event) {        }
            public void drop(DropTargetDropEvent event) {
                try {
                Transferable transferable = event.getTransferable();
                    if (transferable.isDataFlavorSupported(DataFlavor.stringFlavor)) {
                        event.acceptDrop(DnDConstants.ACTION_COPY);
                          String s = (String)transferable.getTransferData(DataFlavor.stringFlavor);
                          addElement(s);
                        event.getDropTargetContext().dropComplete(true);
                    else {
                        event.rejectDrop();
                catch (IOException exception) {
                    exception.printStackTrace();
                    System.err.println("Exception" + exception.getMessage());
                    event.rejectDrop();
                catch (UnsupportedFlavorException ufException) {
                    ufException.printStackTrace();
                    System.err.println("Exception" + ufException.getMessage());
                    event.rejectDrop();
            public void dropActionChanged(DropTargetDragEvent event) {        }
            public void addElement(Object s) {
                ((DefaultListModel)getModel()).addElement(s.toString());
        } //End DList class

  • Creating WSDL file using Netbeans and JAX-WS

    I have created a web service called calculator in Netbeans IDE.
    I build the project and deployed in Tomcat.
    When I accessed WSDL file i getting as follows
    *<?xml version="1.0" encoding="UTF-8" ?>*
    - <definitions xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:tns="http://actions.calculator.com/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="http://actions.calculator.com/" name="calculatorService">
    - <types>
    - <xsd:schema>
    *<xsd:import schemaLocation="http://localhost:8080/calculator/calculator?xsd=1" namespace="http://actions.calculator.com/" />*
    *</xsd:schema>*
    *</types>*
    etc.......
    here schema is imported from another file...
    I need schema to included in the WSDL file itself.
    How can i get a WSDL file like this??
    I am using Netbeans 5.5 and JAX-WS 2.0

    Hi,
    Change the <soap:binding style="document"... to <soap:binding style="rpc"... and see if that works.
    I'm not sure how to get <soap:binding style="document"... working yet - I'm not that experienced in web services yet.
    Hope this helps and is not too late.
    Regards,
    Greg Nye

  • Soap port already in use (856B) GW 703

    Anyone run into this problem where if you have multiple POA's on single server and if you enable SOAP to use default port of 7191 on both POA's, one or other POA complains about "soap port already in use (856B)" and shuts down that POA.
    BES doesn't seem to have option for add'l port number assignments? Or is there a workaround to allow both POA's to listen on same port number?
    Any help is greatly appreciated!
    Thanks

    On Tue, 22 Sep 2009 13:36:02 +0000, josejimenez wrote:
    > Anyone run into this problem where if you have multiple POA's on single
    > server and if you enable SOAP to use default port of 7191 on both POA's,
    > one or other POA complains about "soap port already in use (856B)" and
    > shuts down that POA.
    Makes sense. You can't run multiple services on the same server using
    the same IP address and port.
    > Or
    > is there a workaround to allow both POA's to listen on same port number?
    Use multiple IP addresses and bind each POA to a specific IP.
    Joe Marton
    Novell Knowledge Partner
    SUSE Linux Enterprise 11 is ready for action.

  • Webservice... Binding Style: Document

    Hi,
    I am trying to create a web service with Document literal binding.
    This is what i am using..
    <cfcomponent>
      <cffunction name="listBooks"
        access="remote"
        returntype="xml"
        output="yes"
    style = "document">
    But every time when i review the wsdl file.. i still the that the binding is "rpc"..  its not at all changing..
    </wsdl:portType>
    - <wsdl:binding name="myservice.cfcSoapBinding" type="impl:myservice">
    <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    - <wsdl:operation name="listBooks">
    <wsdlsoap:operation soapAction="" />
    - <wsdl:input name="listBooksRequest">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://ASRdev" use="encoded" />
    </wsdl:input>
    - <wsdl:output name="listBooksResponse">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://ASRdev" use="encoded" />
    </wsdl:output>
    Please help...........................
    -ifaz

    Hi,
    I am trying to create a web service with Document literal binding.
    This is what i am using..
    <cfcomponent>
      <cffunction name="listBooks"
        access="remote"
        returntype="xml"
        output="yes"
    style = "document">
    But every time when i review the wsdl file.. i still the that the binding is "rpc"..  its not at all changing..
    </wsdl:portType>
    - <wsdl:binding name="myservice.cfcSoapBinding" type="impl:myservice">
    <wsdlsoap:binding style="rpc" transport="http://schemas.xmlsoap.org/soap/http" />
    - <wsdl:operation name="listBooks">
    <wsdlsoap:operation soapAction="" />
    - <wsdl:input name="listBooksRequest">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://ASRdev" use="encoded" />
    </wsdl:input>
    - <wsdl:output name="listBooksResponse">
    <wsdlsoap:body encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" namespace="http://ASRdev" use="encoded" />
    </wsdl:output>
    Please help...........................
    -ifaz

  • Reliable messaging between XI and BizTalk using SOAP

    I came across this document describing how reliable messaging between XI and BTS can be implemented using the SOAP extensions. This document has been authored by
    - André Fischer, Project Manager CTSC, SAP AG
    - Matthias Allgaier, Consultant XI, SAP Deutschland AG & Co.
    - KG Jürgen Daiberl, SAP Program Manager CTSC, Microsoft Corporation
    Does anyone know if the prototype code is available for download from SDN or elsewhere? A search on SDN did not produce any results...
    Thanks.
    - KishenM

    Larry,
    Let me see if I understood this - You need to use the SOAP adapter to integrate with BizLink. Bizlink Provides its own SOAP Header and hence you are not sure how to do this.
    Got a few questions,
    1. Has Bizlink given you a XSD / WSDL. Does this have the entire SOAP Payload including the SOAP Header and SOAP body? If yes, create the mapping as needed and instead of the SOAP adapter use the HTTP adapter or use the SOAP adapter and in the SOAP adapter select option Do Not Use SOAP Envelope.
    2. If you do not have a XSD that contains the entire SOAP Enevelope - SOAP header and body then use XSL or Java Mapping that creates this output structure and use the SOAP adapter with the DoNotuseSOAP Envelope option or the HTTP adapter.
    The SOAP adapter in the DONotUseSOAP Emvelope mode basically becomes a http adapter.
    Regards
    Bhavesh

  • SOAP Receiver to use operations and methods

    Hi.
    I have got a WSDL with 3 methods and I have to call one of them.
    However, the SOAP Receiver adapter only has a Action section which can be maintained.
    How can this be attained?
    The WSDL I am using is as follows:
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:tns="urn:uniface:applic:services:CSYV1000" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" targetNamespace="urn:uniface:applic:services:CSYV1000" name="CSYV1000">
         <wsdl:types />
         <wsdl:message name="EXTERNALRequest">
              <wsdl:part name="REQUEST" type="s:string" />
              <wsdl:part name="REQUESTDATA" type="s:string" />
         </wsdl:message>
         <wsdl:message name="LOGOFFRequest">
              <wsdl:part name="REQUEST" type="s:string" />
         </wsdl:message>
         <wsdl:message name="LOGONRequest">
              <wsdl:part name="REQUEST" type="s:string" />
         </wsdl:message>
         <wsdl:message name="EXTERNALResponse">
              <wsdl:part name="return" type="s:int" />
              <wsdl:part name="RESPONSE" type="s:string" />
              <wsdl:part name="RESPONSEDATA" type="s:string" />
              <wsdl:part name="RESPONSEERROR" type="s:string" />
         </wsdl:message>
         <wsdl:message name="LOGOFFResponse">
              <wsdl:part name="return" type="s:int" />
              <wsdl:part name="RESPONSE" type="s:string" />
              <wsdl:part name="RESPONSEERROR" type="s:string" />
         </wsdl:message>
         <wsdl:message name="LOGONResponse">
              <wsdl:part name="return" type="s:int" />
              <wsdl:part name="RESPONSE" type="s:string" />
              <wsdl:part name="RESPONSEERROR" type="s:string" />
         </wsdl:message>
         <wsdl:portType name="CSYV1000PortType">
              <wsdl:operation name="EXTERNAL" parameterOrder="REQUEST REQUESTDATA RESPONSE RESPONSEDATA RESPONSEERROR">
                   <wsdl:input message="tns:EXTERNALRequest" />
                   <wsdl:output message="tns:EXTERNALResponse" />
              </wsdl:operation>
              <wsdl:operation name="LOGOFF" parameterOrder="REQUEST RESPONSE RESPONSEERROR">
                   <wsdl:input message="tns:LOGOFFRequest" />
                   <wsdl:output message="tns:LOGOFFResponse" />
              </wsdl:operation>
              <wsdl:operation name="LOGON" parameterOrder="REQUEST RESPONSE RESPONSEERROR">
                   <wsdl:input message="tns:LOGONRequest" />
                   <wsdl:output message="tns:LOGONResponse" />
              </wsdl:operation>
         </wsdl:portType>
         <wsdl:binding name="CSYV1000Binding" type="tns:CSYV1000PortType">
              <soap:binding transport="http://schemas.xmlsoap.org/soap/http" style="rpc" />
              <wsdl:operation name="EXTERNAL">
                   <soap:operation soapAction="" />
                   <wsdl:input>
                        <soap:body use="encoded" namespace="urn:uniface:applic:services:CSYV1000" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
                   </wsdl:input>
                   <wsdl:output>
                        <soap:body use="encoded" namespace="urn:uniface:applic:services:CSYV1000" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
                   </wsdl:output>
              </wsdl:operation>
              <wsdl:operation name="LOGOFF">
                   <soap:operation soapAction="" />
                   <wsdl:input>
                        <soap:body use="encoded" namespace="urn:uniface:applic:services:CSYV1000" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
                   </wsdl:input>
                   <wsdl:output>
                        <soap:body use="encoded" namespace="urn:uniface:applic:services:CSYV1000" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
                   </wsdl:output>
              </wsdl:operation>
              <wsdl:operation name="LOGON">
                   <soap:operation soapAction="" />
                   <wsdl:input>
                        <soap:body use="encoded" namespace="urn:uniface:applic:services:CSYV1000" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
                   </wsdl:input>
                   <wsdl:output>
                        <soap:body use="encoded" namespace="urn:uniface:applic:services:CSYV1000" encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" />
                   </wsdl:output>
              </wsdl:operation>
         </wsdl:binding>
         <wsdl:service name="CSYV1000Service">
              <wsdl:port name="CSYV1000" binding="tns:CSYV1000Binding">
                   <soap:address location="http://localhost/pathway/environment.pathway" />
              </wsdl:port>
         </wsdl:service>
    </wsdl:definitions>
    Your help is appreciated.
    Regards,
    Reenal

    Hi, Amit.
    The problem arises when I send a logon messages from XI, it fails.
    The request which works is:
    <?xml version="1.0" encoding="utf-16"?>
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="urn:uniface:applic:services:CSYV1000" xmlns:types="urn:uniface:applic:services:CSYV1000/encodedTypes" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
      <soap:Body soap:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
        <tns:LOGON>
          <ns0:REQUEST xmlns:ns0="urn:aucklandcity-govt-nz:filenet:property_search"><service>CSYV1000</service><trace/><groupId/><product>SAP XI</product><processId/><threadId/><nodeId/><ipAddress/><sourceUserId/><sourceOSUserId/><uiForm>CMNQ1030</uiForm><groupIdPrevious/><userId>albadryh</userId><password>husain</password><osUserId></osUserId></ns0:REQUEST>
        </tns:LOGON>
      </soap:Body>
    </soap:Envelope>
    The problem is that XI is not adding the  <tns:LOGON> tags.
    Regards,
    Reenal

Maybe you are looking for

  • ITunes 11 Freezes when I plug in my iPhone 4s

    After upgrading to iTunes 11, it freezes every time I try to plug in my iPhone 4s- I don't even have automatic syncing on.  I've tried everything- waiting, running in comptibility mode with Vista, Win 7, XP and etcettera, ending various processes and

  • Airport fails to connect at login (only)

    Using a MacBook with OSX 10.5, I am trying to connect to a WPA2 Enterprise network. All of the settings are correct, and the certificate is set on 'always trust'.. but on startup/login, Airport fails to connect (no error message, but IP address is se

  • Fire fox loads some websites and not others. Clearing cache and history doesn't help.

    Fire fox loads some websites and not others. Pages that don't load in Firefox do load in other browsers. Clearing cache and history doesn't help. One of the websites that doesn't load is google.com! It loads some of the page, just some menu items at

  • Error in Jdeveloper using WebCenter Framework

    Hi All, I am creating a sample application using webcenter framework in Jdeveloper. As i have installed the extensions of webcenter from HELP->Check For Updates -> webcenter extension. It was working fine but when i am trying to create the connection

  • How do i burn audio cd from libray

    how do I burn audio cd from itunes library?