EWPS - web-service messaging queue

Hi,
We have deployed EWPS webservice and tested through SOAP-UI interface. This is tested successfully.
But the issue that we are facing is whenever we go into the iDocumaker web page ; the SOAP UI is getting error out with the following message
"Native Library C:\docclnt\MSMQLIB.DLL already loaded in another classloader"
Is it that we can use only the "message-queues" only for one application ? Or, we need to define a different message queue for EWPS ?
Thanks..

Hi Pradip,
The message queues provide a decoupled integration between your applications (e.g. iDocumaker and EWPS) and the back-end services, brokered by Docupresentment (IDS). Even though iDocumaker runs on the backend servers, it is still treated as a client to Docupresentment much like EWPS - both use IDS client communication APIs to interact with the message queues. The idea is that many applications (think multiple users of a web application, or multiple users of a thick-client application) are able to interact with the back-end services using the queues without causing overload on the back-end servers.
So, the short answer is that using queues is a way to provide scalable infrastructure that allows many applications to interact with the back-end services. In general, the products (iDocumaker, EWPS, IDS) are configured in such a way as to prevent users from accessing items that are in-use by other users.
If this doesn't adequately answer your question, we'll probably need additional details.
Thanks!
-Andy

Similar Messages

  • Complete web service message not showing next operation

    Hi,
    When sending Xchange complete message, the response shows the next operation. But when using web service for complete the response shows the next queue operation as the same as I have done complete for. Have anybody seen this before and know a solution? I have tested both in 5.2 and 6.0
    <PRODUCTION_REQUEST>
       <COMPLETE>
          <SFC_LIST>
             <SFC>
                <SITE>KRHALL</SITE>
                <ID>SE11410000</ID>
                <RESOURCE>X-LINE</RESOURCE>
                <OPERATION>SM2</OPERATION>
                <USER>JONORD</USER>
             </SFC>
          </SFC_LIST>
       </COMPLETE>
    </PRODUCTION_REQUEST>
    <PRODUCTION_RESPONSE>
      <COMPLETE>
        <SFC_LIST>
          <SFC>
            <ID>SE11410000</ID>
            <ITEM>3EST000215-9384</ITEM>
            <ROUTER>3EST000215-9384</ROUTER>
           <STEP_ID>021</STEP_ID>
           <REWORK>false</REWORK>
           <QTY>1</QTY>
           <TIMES_PROCESSED>1</TIMES_PROCESSED>
           <STEP_COMPLETED>true</STEP_COMPLETED>
           <DONE>false</DONE>
           <DATE_TIME>2012-02-22T14:59:19.320Z</DATE_TIME>
          <QUEUED_STEPS>
             <QUEUED_STEP>
               <ROUTER>3EST000215-9384</ROUTER>
               <STEP_ID>030</STEP_ID>
               <OPERATION>AOI</OPERATION>
            </QUEUED_STEP>
         </QUEUED_STEPS>
       </SFC>
    </SFC_LIST>
    </COMPLETE>
    </PRODUCTION_RESPONSE>
         <me:CompleteRequest_sync>
             <me:CompleteRequest>
                <me:SiteRef>
                   <me:Site>KRHALL</me:Site>
                </me:SiteRef>
                <!1 or more repetitions:>
                <me:SfcRequest>
                   <me:SfcRef>
                      <!You may enter the following 2 items in any order>
                      <me:Sfc>SE1141000A</me:Sfc>
                   </me:SfcRef>
                   <me:ResourceRef>
                      <!You may enter the following 2 items in any order>
                      <me:Resource>X-LINE</me:Resource>
                   </me:ResourceRef>
                   <me:OperationRef>
                      <!You may enter the following 3 items in any order>
                       <me:Operation>SM2</me:Operation>
                      <me:Revision>#</me:Revision>
                   </me:OperationRef>
                   <me:UserRef>
                      <!You may enter the following 2 items in any order>
                      <me:UserId>JONORD</me:UserId>
                   </me:UserRef>
                </me:SfcRequest>
             </me:CompleteRequest>
          </me:CompleteRequest_sync>
             <ns2:CompleteResponse>
                <ns2:SfcResponse>
                   <ns2:DateTime>2012-02-22T16:45:22.319+01:00</ns2:DateTime>
                   <ns2:Done>false</ns2:Done>
                   <ns2:ItemRef>
                      <ns2:Item>3EST000215-9384</ns2:Item>
                      <ns2:Revision>03</ns2:Revision>
                      <ns2:SiteRef>
                         <ns2:Site>KRHALL</ns2:Site>
                      </ns2:SiteRef>
                   </ns2:ItemRef>
                   <ns2:Quantity>1</ns2:Quantity>
                   <ns2:QueuedStep>
                      <ns2:OperationRef>
                         <ns2:SiteRef>
                            <ns2:Site>KRHALL</ns2:Site>
                         </ns2:SiteRef>
                         <ns2:Operation>SM2</ns2:Operation>
                         <ns2:Revision>1</ns2:Revision>
                      </ns2:OperationRef>
                      <ns2:RouterRef>
                         <ns2:SiteRef>
                            <ns2:Site>KRHALL</ns2:Site>
                         </ns2:SiteRef>
                         <ns2:Router>3EST000215-9384</ns2:Router>
                         <ns2:Revision>03-02</ns2:Revision>
                         <ns2:RouterType>U</ns2:RouterType>
                      </ns2:RouterRef>
                      <ns2:StepId>021</ns2:StepId>
                   </ns2:QueuedStep>
                   <ns2:Rework>false</ns2:Rework>
                   <ns2:RouterRef>
                      <ns2:SiteRef>
                         <ns2:Site>KRHALL</ns2:Site>
                      </ns2:SiteRef>
                      <ns2:Router>3EST000215-9384</ns2:Router>
                      <ns2:Revision>03-02</ns2:Revision>
                      <ns2:RouterType>U</ns2:RouterType>
                   </ns2:RouterRef>
                   <ns2:SfcRef>
                      <ns2:Sfc>SE1141000A</ns2:Sfc>
                      <ns2:SiteRef>
                         <ns2:Site>KRHALL</ns2:Site>
                      </ns2:SiteRef>
                   </ns2:SfcRef>
                   <ns2:StepCompleted>true</ns2:StepCompleted>
                   <ns2:StepId>021</ns2:StepId>
                   <ns2:TimesProcessed>1</ns2:TimesProcessed>
                </ns2:SfcResponse>
             </ns2:CompleteResponse>

    Hi,
    I have now raised a ticket for this issue.
    Br,
    Johan

  • Suggestions for Chunking Large Outbound Web Service Messages from BPEL

    We have a problem today when Oracle EBS sends a large amount of data to BPEL, BPEL processes that data and then attempts to pass that data as a web service via a partner link to the PeopleSoft integration broker. When the message is too large ( > 10,000 records or so) we are hitting some issues on the PeopleSoft web server side being unable to receive that large of a message.
    "allocLargeObjectOrArray - Object size: 32768016, Num elements: 8192000"
    We are considering adjusting the BPEL program to chunk the outbound data being sent to PeopleSoft. The idea would be to use some type of loop and just break after so many lines, transmit the current message and then start a new message.
    The PeopleSoft integration broker has a setting, for outbound type integrations, that can enable an automated chunking feature called ‘Max App Message Size’. I was wondering, does BPEL have a similar configuration setting that might provide this feature? I’m dreaming up that this could be a property of the partner link object that could allow you to specify a certain ‘max size’ and then it would just know to start a new message at that threshold. That might avoid us having to make any additional BPEL code changes at this point.
    Currently using version 11.1.1.1.
    Any advice, much appreciated.
    Regards,
    Ken

    I have found the following tutorial that implements something similiar to what I am trying to do: http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/odi/10g/10135/odiscenario_bpelcallback/odiscenario_bpelcallback.htm#t3
    Because of this, I am now confident that the conversation IDs can be used to achieve correlation. I have implemented the pattern by performing
    an invoke activity on the web service, passing the result of ora:getConversationId() as part of the message. The conversation Id returned is of UUID-Form.
    After the invoke activity, I have added a pick activity to receive the response message supplied by the web service through IDeliveryService.post(...). I can see that the message is received correctly by loooking at the contents of DLV_MESSAGE. However, the pick activity times out every time (after 10m). Looking at DLV_SUBSCRIPTION reveals that the conversation_id for the pick/receive activity is set to a value of the form bpel://localhost/default/MyBpelProcessName~1.0/7610001-BpInv0-BpSeq2.7-2. As far as I know, this should instead be set to the UUID that ora:getConversationId() returned before performing the invoke activity. What is going wrong here?
    Thanks for your help!

  • Office 365 Reporting Web Service Message Trace - It says it can get the past 30 days but i can only get the past 7 days

    It says Message Trace data is stored for 90 days here: http://technet.microsoft.com/library/jj723162(v=exchg.150).aspx
    When running the MessageTrace report using the Office 365 Reporting Web Service it only returns the past
    7 days, even though it says up to 30 days here: http://msdn.microsoft.com/en-us/library/office/jj984335(v=office.15).aspx.
    PowerShell’s "Get-MessageTrace" cmdlet only returns the past 7 days as well. PowerShell also has
    an alternative cmdlet called "Start-HistoricalSearch" which returns the MessageTrace results between 7 and 90 days old.
    Is it supposed to return 30 days, or is the documentation wrong, or is their an alternative report (like
    PowerShell) to get MessageTrace results for over 7 days using the Office 365 Reporting Web Service?
    Note: I'm aware that the results are returned in batches of 2000 MessageTrace results.

    That document is pretty old last modified March 2013 so I would say it's out of date. The reporting services are still pretty new in the current release I believe 7 days is limit for the Rest Endpoint and the Get-MessageTrace cmdlet (which is what
    the more recent documentation around message tracking say) there is no REST endpoint for Start-HistoricalSearch you can see all the current endpoints by looking at the Metadata via
    https://reports.office365.com/ecp/reportingwebservice/reporting.svc/$metadata
    These services are evolving so new features and reports are added which is explained in
    http://msdn.microsoft.com/EN-US/library/office/jj984346(v=office.15).aspx . But there is no public information on Timeframes and what reports and features are going to be added in future updates (that I know of). If you need data older then
    7 days then Automating the HistoricalSearch cmdlets would be the way to do it for now.
    Cheers
    Glen
     

  • Which Web Service message formats are supported?

    Hi,
    From the documentation it looks like only SOAP binding 1.1 is supported but nothing is mentioned about the supported message formats, e.g. Document literal (wrapped/bare), rpc-encoded, rpc-literal. etc. Does anybody know which are supported?
    Regards Pete

    Hi,
    I opened a SR on Metalink and got this answer:
    ApEx supports only RPC/literal style. The current support for Web services was designed to work with RPC style Web services nearly three years ago. We (
    ApEx development/product management) are reviewing enhancement to more broadly support Web services and hope to have that support in a future release.
    For the current support of Web services in Oracle Application Express, a design decision was made to support only WSDL’s that use the W3C XML Schema specification as it
    is data type system. Just converting a Web service to RPC style is not all that is required to make it work properly with Application Express. It also must use the XML Schema specification as its data type system and prefix those type references, with the same prefix as the XML Schema reference in the definitions declaration in the WSDL.
    Oracle Application Express expects type declarations to be fully qualified with the same prefix of the reference to the XML Schema specification as in the WSDL’s definitions declaration (http://www.w3.org/2001/XMLSchema). If the WSDL contains type references that are not qualified with the prefix of the XML Schema specification, then editing the WSDL to include these type references with the corresponding prefix will allow Oracle Application Express to properly parse the WSDL.
    Support for more loosely defined types is planned for a future release of Oracle Application Express.
    Regards Pete

  • Monitoring/Viewing Web Service Messages in GlassFish

    Hello,
    I try to monitor the messages a Web Service produces in the admin GUI in GlassFish (v2 ur2): MyWebService -> Monitor -> Messages.
    However, no messages are listed in spite of a successful activation of the Web Service.
    The monitoring level in the configuration is set to 'HIGH'.
    Any ideas ?
    Thanks for your help.
    Regards

    Hi
    it's me again.
    OK, I made a significant progress, I used Perl's SOAP::Lite which apparently does not understand the document/literal wsdl style.
    So, I'm using a Perl package which does support document/literal and now I get error messages.
    The problem now is that the package is looking for xsd prefix in the wsdl+xsd files, and JAX-WS wsgen tool placed the prefix xs in these files.
    I tried to manually fix this, but when deploying the war file to glassfish I get "new" wsdl+xsd file with the xs prefix again.
    Can I somehow configure JAX-WS (or glassfish) to put a different prefix?
    It's so frustrating to spend so much time on such problems.
    Thanks
    Sigal

  • Double precision formatting in web service messages

    I currently have a value passed in the response of a web service that represents a currency value. Right now I have it defined as a double type in xsd. Every time I return a value such as 12.00 the value gets truncated to 12.0. And if I have a value of 12.01, the entire number is returned. What is the best way to make sure the value is always two decimal places for the returned value?
    Or does the client side have to know if the number is 12.0, then the second decimal is 0 etc?

    I think its working i redefined the web service call and was able to use it with no problems - except when I try to substitute a form variable into the call. The webservice actuals does not substitute the variable.
    So this is the webservice call that I set up - and what ends up in the database is "#P72_NAME#" instead of what is in the field
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://com.remp.web.sas.dataimport.type">
    <soapenv:Header/>
    <soapenv:Body>
    <com:registerCompound>
    <String_1>#P72_NAME#</String_1>
    <Double_2></Double_2>
    <String_3></String_3>
    </com:registerCompound>
    </soapenv:Body>
    </soapenv:Envelope>

  • How to create Web Service based on PI WSDL message

    Hi all,
    we have following scenario:
    Within PI (version 7.1) we set up a message type and inbound service interface. This service interface should send the PI message to a web service running on a SAP J2EE (version 7.01). As the PI message is sent as WSDL I thought it should be easy to build a web service on the SAP J2EE based on this WSDL from PI.
    Unfortunately, I have problems creating the Web Service.
    For my current project we integrated the NWDI to the SAP NetWeaver Developer Studio and I'm required to add the Web Service to an existing DC (Development Component) within the NWDI.
    What I tried so far is:
    - I created a Deployable Proxy Project and within this I created a Client Proxy Definition based on the WSDL from the PI. But I can't add this Proxy to the DCs of the NWDI and I don't know how to implement my own coding here in order execute specific functions.
    - I created a new class within the NWDI DC and a public method. Based on this I created a Virtual Interface and a Web Service Definition (WSD). Then I added this to a Web Service Deployment Descriptor. I uploaded this to the SAP J2EE. But I'm not able to access this and I don't know hoe to assign the WSDL here.
    I also tried here to create a client proxy based on this WSD as I thought I might assign the WSDL here. But I don't see the WSD in the list of Web Services uploaded to the SAP J2EE...
    Can you please advice me how to create a Web Service in such an environment?
    regards
    René Jurmann

    Hi Tahir,
    sorry that you needed to wait this long - but this is how I created the web service:
    The steps on how to create the web service in NetWeaver Developer studio are nearly the same as described in the blog http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/5838. [original link is broken] [original link is broken] [original link is broken]
    Some steps I just skipped and some others I added. Some of the steps I did the way I described it as I needed to connect the web service with the SAP PI.
    Prerequisites:
    Add Java Perspective and J2EE Development Perspective to the open perspectives.
    Within "Window - Preferences - Web Services" check "Soap extensions visible in the virtual interface editor"
    The SDM of the corresponding SAP J2EE is configured within "Window - Preferences"
    Create a Development Component (DC) with type "J2EE -> EJB Module"
    The business logic of the web service will be implemented in an Enterprise Java Bean (EJB). So first the EJB component must be created:
         Choose "File -> New -> Other"
         In opening PopUp choose "Development Component -> Development Component Project"
         Select the Software Component for which you want to add the DC (e.g. "Local Development -> MyComponents")
         Choose now vendor, name and type:
              vendor is an alpha-numeric string of 20 characters starting with a letter - all in lower case
              name is an alpha-numeric string starting with a letter - all in lower case
              vendor and name concatenated must not be longer then 40 characters
              the name can be separated into different part using "/" as separator
              each part of the name must not be longer than 8 characters
              the type is "J2EE - EJB Module"
              you can specify a Caption as general description for the web service
    Create new EJB
    To create the EJB itself:
         In J2EE DC Explorer of J2EE Development Perspective expand new DC and right-click on folder "ejbModule"
         Choose "New - EJB" with following details:
              EJB Name: <name as for PI service Interface to be created - starting in upper case>
              EJB Project: <pre selected>
              Bean Type: Stateless Session Bean
              Default EJB Package: <corresponds to namespace in PI>
              generate default interfaces: Checked
    Regarding the "Default EJB Package" this should be created according the namespace in PI for which all PI objects will be created. This only applies if you have some naming conventions here.
    Example:
    Namespace in PI is:  http://company.net/pi/SOFTWARE_COMP/Application
    The corresponding package then is: net.company.pi.software_comp.application
    Implement coding for web service
    As the web service will be called via PI some transfer variables will be submitted. Most likely, those variables will not be standard type (e.g. String) but a complex type. Those types must be generated as Java classes. Below an example of a complex type I needed:
    Data Type
    net.company.pi.software_comp.application.types.MessageProcessingInformation
    Structure:
         Element name          Element type
         sendingSystemID          String
         interfaceID               String
         businessProcessVariantCode     String
         testIndicator               Boolean
    For every element described a public "get", "set" and "has" method must be created in the corresponding Java class:
    package net.company.pi.software_comp.application.types;
    import java.io.Serializable;
    public class MessageProcessingInformation implements Serializable {
         protected String sendingSystemID;
         protected String interfaceID;
         protected String businessProcessVariantCode;
         protected Boolean testIndicator;
         public String getSendingSystemID() {
              return sendingSystemID;
         public void setSendingSystemID(String value) {
              this.sendingSystemID = value;
         public boolean hasSendingSystemID() {
              if(sendingSystemID != null && !sendingSystemID.equals("")){
                   return true;
              return false;
    All Java classes representing complex types and all classes referenced here (used for sub-types) must implement java.io.Serializable. Java standard types which do not implement this class must not be used as sub-types.
    As soon as all data types are declared the real business logic can be implemented:
         In J2EE DC Explorer of J2EE Development Perspective expand DC - "ejb-jar.xml" - <Name> and double click on "ejbCreate"
         In detail view select folder "Business Methods" and click "Add"
         choose name of business method - this should be the same as the PI message type used for the service interface - starting lower case
         return type should be "void"
         add needed parameters fully qualified - including package (as specified in PI and created previously in DC)
         you can mark certain parameters as array if necessary
    Remark:
    It might be that after saving you get an error. This might be as the package name of one component is copied to the corresponding Java class at the very beginning (before the package declaration within the Java class). Simply delete the string here.
    It also might be, that the new business method is only defined in the remote interface class but not in the bean class. Just create an according method in the bean class.
    Within the newly created business method within the bean class you can now implement the business logic.
    Create a DC with type "J2EE -> Enterprise Application"
    In order to create the "real" web service and deploy it to the J2EE an Enterprise Application project has to be created. So create a new DC as for the EJB Module but choose as type "J2EE -> Enterprise Application".
    After the DC is created right click on the EJB DC and choose "Add to EAR Project". Choose the new DC.
    Create web service for EJB
    As soon as you implemented the business logic you can create the "real" web service. Therefore:
         Right click on the EJB name below "ejb-jar.xml"
         Choose "New - Web Service"
         Choose proper "Web Service Name" and "Configuration Name" (probably oriented at the EJB name)
         Copy the URL of the web service - you'll need it later for PI configuration
         on the second next screen use the same name for "Virtual Interface" and "Web Service Definition" (the name should be the name of the "Endpoint")
         the "EAR Project" should be preselected
    Unfortunately, the web service can't be used in its current configuration to be accessed by PI. Therefore the Virtual Interface must be changed. To do so, expand folder "Virtual Interfaces" and double click the virtual interface created.
    Within the detail view expand in tabs "Mapping" and "Types" the complete folder structure. For any "SOAP Extension" where a namespace can be defined use as namespace the corresponding namespace in PI (e.g. http://corpintra.net/pi/CBFC_GLOBAL_SAP_APPL/BillerDirect) but do not change any "Soap Extension" of a standard Java type. (if you don't have any naming convetions for namespaces in PI you can leave the SOAP Extension here. But then the namespace in PI should be set accordingly.)
    Probably it can be necessary on top level "Soap Extensions" in tab "Mapping" to leave "Use Namespaces for Parameters" unchecked. For some of my web services this parameter must be checked for others not - just try.
    If you can define a "New Name", "Local Name" or "Item Label" for a Soap Extension then use a name with starting upper case letter. (For Java Naming conventions most of the data type names will start with lower case letters.) Especially the method name must be renamed this way in order to stick to the PI namings.
    As a last point to change here check in tab "Mapping" all "Incoming Parameters" which you specified as array. Use for those as "New Name" a different name - do not just simply change from lower case to upper case. This is necessary as on PI we need to create two levels although here only one is specified.
    For any own sub-type declared as array the name within the coding should also differ from the corresponding Java Class name the type refers to.
    If all this is done you can deploy the web service to the J2EE:
         right click on "Enterprise Application" DC and choose "Development Component - Build..." and build all corresponding components
         right click on "Enterprise Application" DC and choose "Development Component - Deploy"
    Test the new web service via <J2EE URL>/wsnavigator/enterwsdl.html
    Create PI interface
    After the web service is created successfully the PI integration can be started.
    Therefore, within the Enterprise Services Builder create a data type according to the web service definition. All components defined on top-level for this data type should be declared as incoming parameter for the web service business method. Therefore it could be necessary to create some sub data types on PI first and add those to the "master" data type.
    Ensure that the names of the components correspond to the names defined in the web service (see virtual interface here). Those names must exactly be the same - including lower/upper case. Also take care for the ordering of the components.
    In case you need to include arrays following applies:
    The upper level is of occurrence "1:1". This has only one sub-entry with occurrence "1:n". The names for upper and sub-level must not equal.
    Based on the data type a message type is created. The name of the message type must be exactly the same as the name of the web service business method. (Hint: the name of the web service business method was most likely changed in the virtual interface. Then this name must correspond to the message type name.) Based on the message type an asynchronous inbound interface is to be created (which will be referred in the Integration Directory). The operation name for this interface (left panel) should be the same as the name for the web service business method.
    Create PI mappings and routings
    How to map (message mapping and operation mapping) from source to the web service message I wont explain here as this depends on the source message. The only important things here are:
         When creating the SOAP communication channel within the Integration Builder the "Target URL" is:
              <J2EE URL>/<Access URL as specified in web service creation>?wsdl&style=document
         The soap action is the name of the web service business method.
         Most likely the web service needs authentication to be executed.

  • JMS Proxy to Web Service Problem

    Hi All,
    I have a JMS proxy that routes messages to a web service. I have set the delivery failure parameters on the JMS queue. When a message is put onto the queue and there is a problem within the message flow proper, the message is retried the appropriate number of times and put onto the Error Destination queue as necessary. However, if there is a problem calling the web service, message delivery is NOT retried, the message is NOT put onto the Error Destination queue, and the message is lost. The web service itself isn't throwing a SOAP Fault, but the business service can't reach the web service (firewall issue). My Route Error Handler in the message flow is hit and it performs a Reply With Failure.
    Can anyone please explain to me if this is by design and, if so, why? Also, how does a person work around this? I need the message to be retried. I understand that a web service cannot participate in an XA transaction, but it seems to me any failure within the message flow should cause a retry on the JMS queue.
    Thanks.
    Edited by mvcg at 06/11/2008 1:57 PM

    You should remove the Route Node since it should only be used in HttpProxy.
    Instead use just the request pipeline for your routing.
    if (condition1)
    Service Callout (or publish) to Service1
    else if (condition2)
    Service Callout (or publish) to Service2
    else
    Rasie error?
    You shouldn't need to reply with failure. Any errors in the service callout or publish should go to exception handling if you use QoS exactly-once.

  • SOAP/Web service based repository manager

    Hi,
    We would like to implement a repository manager using SOAP/Web service messages to connect to the document store.  The solution will have to support most opperations as the WebDAV repository manager supports.  TREX has to be able to crawl for indexing/classification, but I guess that is not a problem.
    Is the some information out there on creating repository managers like this, and how they tie in with ACL managers, cahces etc?
    Message was edited by: Bjorn Bjornstad

    Not relevant any more

  • Invoking a Web Service using XI 2.0

    Hi all,
    I am attempting to create a scenario where an SAP application invokes a web service through XI 2.0.
    I have created an ABAP proxy to allow my ABAP to start the call process and have set up the message interfaces within the Integration Directory.
    I want XI to receive a call from this proxy and then act as the client to an existing Web Service.. calling it and bringing back a response... but it doesn't look like I can import the existing WSDL as a I would have expected.
    So... instead I have exported the Message Interface for the "out of XI" portion of the interface as a WSDL and have asked the Web Service provider to amend their service according to this XI generated WSDL.
    My difficulty now is how to use the SOAP adapter. Within the Integration Directory I presumably need to define the endpoint with XI Connectivity but I am not sure how to fill in the URL address of the SOAP adapter...
    Any help on how to configure the actual SOAP adapter to fulfill this requirement would be great too.
    I have looked around the boards to see if I could work this out from previous posts but without success so far.
    It's a synchronous scenario and basically should look like...
    ABAP Proxy->XI->SOAP Adapter->Web Service->XI->ABAP Proxy
    Many thanks,
    Gordon

    Hi Gordon,
    here is an example for SOAP-Adapter config:
    # Bubble adapter java class
    classname=com.sap.aii.messaging.adapter.ModuleBubble
    # Sets the bubble module helper that can instantiate your bubble bag
    Bubble.Helper=com.sap.aii.messaging.adapter.ModuleBubbleHelperXMBWSImpl
    ###### Part 0 (FromWS and ToWS) : common part ######
    # Keeps the XMB headers in web service messages
    XMBWS.KeepHeaders=false
    # Encodes the xmb headers into a special HTTP header string x-xmb_ws_encoded
    XMBWS.UseEncoded=false
    # The target URL for the web service, to which the adapter sends web service messages.
    # The address is part of the WSDL
    XMBWS.TargetURL=http://www.extensio.com:8080/ExtensioInfoServer/servlet/rpcrouter
    # Proxy configuration from SAP
    XMBWS.proxyHost=PrOxY
    XMBWS.proxyPort=8080
    # The port and path where the adapter waits for XMB messages from clients.
    XMBWS.XMBPort=8400
    XMBWS.XMBPath=/soap/stockquote
    # The default SOAPAction HTTP request header to the web Service server
    # The SoapAction is part of the WSDL
    XMBWS.DefaultSOAPAction=
    Of course you have to set URL, proxy and SOAP-action to your belongings.
    You define the endpoint as:
    "http://<Adapter-Server>:<XMBPort><XMBPath>"
    in this example:
    "http://localhost:8400/soap/stockquote"
    Stefan

  • PI Web Service Scenario

    Hi experts!!!!
    I try to learn PI Web Service Scenario, and for test, i developed a simple scenario.
    I created a Service Message Synchron Outbound Message with Request and Response Structure, and I created a Service Message Synchron Inbound with Request and Response web service message (previouse imported on External Definition).
    I developed 2 mappings, one for Requeste ( MyMessageReq ---> Web Service Request) and other one for Response  (Web Service Response --> MyMessageResponse). and add this on Operation Mapping.
    In Directory, i created 2 Business Components (WS_Sender and WS_Receiver).and add my objects.
    For Receiver Communication channel i user adapter type like WS. and configured this like help.sap.
    When i executed the interface, the communication channel returns the following error:
    <!--  Call Adapter
      -->
    - <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">WS_ADAPTER_SYS_ERROR</SAP:Code>
      <SAP:P1 />
      <SAP:P2 />
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>Systemfehler beim Aufruf des Web-Service-Adapters: Error al acceder a WSDL: &quot;Error in WSDL access for task ID &quot;00000000000000000007&quot;; read the long text&quot;</SAP:Stack>
      <SAP:Retry>M</SAP:Retry>
      </SAP:Error>
    I don't know the reason of this error, and i don't found anything on forum...
    Please, could somebody help me? Could somebody have any idea? Thanks.
    Gemma.

    Thanks.
    Now I use a communication channel soap receiver, and when i try to execute the interface, the call adapter returns the following error:
    <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
      <SAP:Category>XIServer</SAP:Category>
      <SAP:Code area="INTERNAL">CLIENT_SEND_FAILED</SAP:Code>
      <SAP:P1>35</SAP:P1>
      <SAP:P2>HTTPIO_ERROR_CUSTOM_MYSAPSSO-Fehlermeldung beim Senden der Daten.</SAP:P2>
      <SAP:P3 />
      <SAP:P4 />
      <SAP:AdditionalText />
      <SAP:Stack>Fehler beim Senden per HTTP (Fehlercode: 35, Fehlertext: HTTPIO_ERROR_CUSTOM_MYSAPSSO-Fehlermeldung beim Senden der Daten.)</SAP:Stack>
      <SAP:Retry>N</SAP:Retry>
      </SAP:Error>
    Please, could somebody help me? Thanks.

  • Web Services Manager Control, SOA Suite, Retrieving Roles from OID

    I am a bit confused about mapping of groups and privileges when it comes to the LDAP (in my case oracle internet directory, OID) and groups defined by Web Services Manager Control.
    I am using Web Services Manager Control->Manage Policies to define a gateway (or agent) for my web services. Through      
    Policy Management > Manage Policies > Policies > Policy
    I have also defined some pipeline steps which require authorization by an LDAP provider.(OID)
    I need two things:
    - First I have such roles and groups here in Web Services Manager:
    Administration > Groups / Roles
    Group Name      Role Name      
    su1-grp      Super User      
    da1-grp      Domain Administrator      
    ca1-grp      Component Administrator      
    ca2-grp      Component Administrator      
    which could be set for view and modification of web services. What is the relation between these groups and user groups in Oracle Internet Directory which I authorize against?
    - Second, my web services are invoked from pages which access to them involves authentication and authorization against OID. I need the username/password to be propagated to the webservice automatically. If the web service is presented as a button on such pages, for example, I don't want the user to be forced to enter username/passwords for each call to the services/
    I appreciate any comments or reference to books and documents.
    Thank you in advance.
    Best Regards,
    Farbod

    Hi Farbod
    Your problem is not new and i have posted in couple of other threads before.
    Roles in OID are for you to authorize the web service message itself. In your case when the user logins to your web application and calls the web service, you have to do two things:
    a) Extract Credentials
    b) AUthenticate against LDAP
    c) Perform authorization against LDAP
    Now the trick part is, you have to have the same username and password. You have to capture and store in session( ugly ugly..from security point of view) and then when you call the web service, you then invoke with the username and password.
    There are other better options available but might require additonal work or infrastructure.
    If your web application is protected by Oracle Access Manager or siteminder, you can pass those cookies.
    Next option is using SAML. You can generate SAML token on behalf of the user, and attach the SAML token to the web service messsage. In OWSM you then configure to validate SAML token and then you have to write custom step to extract the user name and perform any authorization.
    Since anyway you have to write custom step, third option is you can send encrypted cookie ( You web application can create a login session cookie -encrypted after the user signed in ). In OWSM you can write custom step to decrypt the cookie and then perform any validation.
    You have the easiest option of sending the same username and password with a security risk, or a custom development approach.
    Thanks
    Ram

  • Web service client error

    Hello,
    I created new Web service client using WL 8.1, axis 1.4 , JDK 1.4.2 . The Service is hosted by my vendor and it's on asp/.net.
    I used axis to create stub implemetation and when i invoke the service , i get the following error . I googled out the error and i see lot of them complain this as an axis issue.
    Does anyone faced this error before ? or found an workaround for this?
    Error message :-
    2009-09-16 15:11:52,299] [DEBUG] [org.apache.axis.utils.XMLUtils] - Failed to set EntityResolver to null on DocumentBuilder
    java.lang.NullPointerException
         at weblogic.xml.jaxp.ChainingEntityResolver.popEntityResolver(ChainingEntityResolver.java:61)
         at weblogic.xml.jaxp.RegistryDocumentBuilder.setEntityResolver(RegistryDocumentBuilder.java:168)
         at org.apache.axis.utils.XMLUtils.releaseDocumentBuilder(XMLUtils.java:252)
         at org.apache.axis.utils.XMLUtils.newDocument(XMLUtils.java:342)
    Thanks in advance.
    Thanks,
    Subu

    You made proxy client not a client.
    I think u did not make any mistake to generate the proxy client but most probably ur web service-- message format is not rpc/encoded. Check it. hope u will succeed

  • Open ESB Question On Web Services

    I have been reading about Open ESB and it seems it might be the tool that I am looking for to solve a specific set of problems.
    Given a WSDL file and a URL to a web service, can I expose the service to be accessed by different protocols? From what I read, if there exists a binding component for that protocol, then I should be able to hit the external web service using that protocol. Are there any examples of doing this using regular web service messages (the trivial case), as well as examples using other protocols? Is BPEL a requirement for this type of exchange or is it much simpler?

    Repost

Maybe you are looking for

  • Availability check-----stock confm qty--Urgent reply.....

    Hi We have a below requirement.. While creating sales order if the available stock is zero after doing ATP check,then we should not be able to save the sales order...(if confimed qty is zero,then saving of that particular item should not be done.It s

  • ITunes launches and then quits responding in windows 7.

    iTunes launches and then quits responding...I have windows 7.  How do I correct the issue without having to check each song to see if it is a problem.  I have over 8000 of them and that would suck.

  • Right click doen't work anymore

    I installed Essbase 11.1.1.3 with the Excel Addin and Smart View. I have Office 2007 but I tried also Office 2003. The problem is that now the right click on a Excel page doesn't work anymore. It doesn't show the menu. Is this a normal behaviour? Wha

  • How can I get the print to be larger on iMac lion?

    I can barely read E mails he print is too small. Also on my home page, how do I make it bigger?

  • IPhone 5 not showing received calls under Recent tab.

    Currently using an iPhone 5 (iOS 6.0 on Sprint). The issue that I am having is that the vast majority of recevied (incoming) calls are not staying on my call log under the recent tab. When I access the Recent tab under the Phone menu and select the A