OSB: Proxy Service and Dispatch Policy

Hi all,
I'm trying to use OSB (10.3) proxy service with dispatch policy set to WebLogic (10.3) work manager to limit maximum number of threads allocated for request to this proxy service.
It seems to me that whole dispatch policy setting is ignored in OSB. The situation is like this: I have simple Axis based web service with wait method that just waits for few seconds (based on request parameter). I use this service for testing (hm, so far just for trying to understand) OSB dispatch policy function.
Using soapUI I created a simple load test which uses 10 threads to call wait(10) - it means "wait for 10 seconds". Time limit for the whole load test is set to 20 seconds. It is clear that the total execution count is 2 x 10 = 20. So far, so good.
Then I created simple proxy service in OSB that just routes request to business service representing my Axis service with wait method. I set a dispatch policy for the proxy service to WorkManager-2threads (see below) and I expected that running the same load test with endpoint set to OSB would result in significant lower total execution count. I expected that because WebLogic should allocate 2 threads at most for all requests to this proxy service. However, that's not the case as the result is the same as in the first (Axis only) test. Just as there was no dispatch policy settings at all ...
Where is the problem?
This is the relevant part of my WebLogic configuration regarding work manager:
<max-threads-constraint>
<name>MaxThreadsConstraint-2</name>
<target>AdminServer</target>
<count>2</count>
<connection-pool-name></connection-pool-name>
</max-threads-constraint>
<work-manager>
<name>WorkManager-2threads</name>
<target>AdminServer</target>
<max-threads-constraint>MaxThreadsConstraint-2</max-threads-constraint>
<capacity xsi:nil="true"></capacity>
<ignore-stuck-threads>false</ignore-stuck-threads>
</work-manager>

It's same problem to me. I do pressure test by loadrunner,I deployed two separate proxy service,under same concurrent user,I get same TPS from the two proxy service.but when I add low priority concurrent user,low priority TPS up.
I set the Route option as you say,but weblogic hanged immediately,and can't be accessed by the console.

Similar Messages

  • OSB proxy service and BPEL depedency is not established in BTM

    Hi All,
    I am using BTM 12.1.0.3 and I have deployed a service where an OSB proxy service is taking employee information and callling a BPEL process which writes data in some database table. The OSB proxy service and BPEL got discovered in BTM but the dependecy between OSB Proxy service and BPEL process is not established in BTM. I have used soa-dorect protocol to call the BPEL from OSB. I have also tried with using http protocol in OSB for calling a BPEL but nothing worked and the depedency is not established in BTM.
    Now I want to create an end-toend transaction i.e. starting from OSB proxy to the database. For this I selected OSB proxy operation and BPEL operation but correlation is not established. How can I correlate these operation? And how can I create an end-to-end transaction for this type of service where OSB calls a BPEL?
    Please guide!!
    Thanks in advance!!

    you can manually correlate any number of services to create an end-2-end transaction. Please see http://docs.oracle.com/cd/E24628_01/doc.121/e37014/transactions004.htm#BABDBDFI on how to manually correlate services in BTM.

  • Osb proxy service with owsm policy auth slow when soap request very large

    I have a proxy service which is security with owsm policy: oracle/wss_username_token_service_policy, the proxy service simply route to Business Service which directly invoke a bpel exposed web service, when I call the proxy service with soap envelope large than 15MB(not attachment), waiting about 4~5 minutes, the bpel instance created ; but when I remove the security policy:oracle/wss_username_token_service_policy, it will cost only 20 seconds, why authentication cost so long? How can I deal with the problem?
    My English is poor, please don't mind!
    besides, with my OSB version is 11.1.1.6.0

    I finally figured it out. The nullpointer exception is related to the SAML assertion. The SAML assertion in my requests is signed with embedded signature and this seems to be not supported with the used OWSM policy. Without the signature is the exception gone.
    Marian

  • Configuring Active Directory user to Authenticate against OSB proxy service

    Hi,
    I applied the oracle Predefined auth.xml WS-policy to the osb proxy service and that will query a web service that is running on separate weblogic server, and I configured ActiveDirectory as an Authentication Provider in the weblogic server under myrealm. when I pass the weblogic/weblogic which is an admin account in the OSB test console or soap ui to test the authentication works and I get the response back but when I pass in one of the Active directory username/password I'm getting the following Failed to assert identity with UsernameToken SOAP fault.
    Do I have to change or add any configuration In the weblogic server to make this work? such as Identity Assertion provider in the weblogic server.
    fault: <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
    <con:errorCode>BEA-386201</con:errorCode>
    <con:reason>
    A web service security fault occurred[{http://www.w3.org/2003/05/soap-envelope}Sender][Failed to assert identity with UsernameToken.]
    </con:reason>
    <con:details>
    <err:WebServiceSecurityFault xmlns:err="http://www.bea.com/wli/sb/errors">
    <err:faultcode xmlns:soap="http://www.w3.org/2003/05/soap-envelope">soap:Sender</err:faultcode>
    <err:faultstring>
    Failed to assert identity with UsernameToken.
    </err:faultstring>
    </err:WebServiceSecurityFault>
    </con:details>
    <con:location>
    <con:path>request-pipeline</con:path>
    </con:location>
    </con:fault>
    Regards
    Vick

    Hi Manoj
    I have configured the weblogic server to use the Active Directory Authentication provider which is supported in weblogic server and I can see the AD users under weblogic console under users and groups tab, but if I pass in the username/password of the users in AD I'm getting the above error.
    thanks
    Vick

  • How can we call a OSB proxy service from a BPEL process?

    Hi,
    I want to call a OSB proxy service from a BPEL process. Can you please explain me the procedure?

    Get the wsdl of the OSB proxy service and create webservice parnerlink in BPEL based on this wsdl to invoke the service
    To form the wsdl url, copy the Endpoint URI  configured to the proxy service(just click on the proxy service in the console) from the sbconsole  - /ATHGPUM_GlidePathService/ProxyService/ATHGPUM_GlidePathProxyService
    Pre append <<protocol://OSB Hostname:OSB Port>>  - http://localhost:8000/   and post append with ?WSDL
    The final WSDL url look like  - http://localhost:8000/ATHGPUM_GlidePathService/ProxyService/ATHGPUM_GlidePathProxyService?WSDL
    Regards
    Albin I

  • OSB Proxy service request is echoed

    Hi All
    When I test my OSB proxy service, the request is being echoed back and the invocation trace just shows "No Service has been invoked, the request is echoed". I have created a Business service for my BPEL process and this is working fine. Only problem is when invoked from the proxy. The call is not even going to the BS. And there is no authentication or security policy attached to any of my services. Can someone please help?
    Also, when I put the endpoint of the proxy service into my browser, it shows a Forbidden-403 error
    The log file shows access denied exceptions. The trace from the log file is
    Failed to process request message for service ProxyService OracleEbizProductServices/ProxyServices/GetOracleProductInventory: com.bea.wli.sb.security.AccessNotAllowedException com.bea.wli.sb.security.AccessNotAllowedException at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:136) at com.bea.wli.sb.pipeline.RouterSecurity.doAccessControl(RouterSecurity.java:117) at com.bea.wli.sb.pipeline.RouterManager.processMessage(RouterManager.java:586) at
    Any suggestions on what's going on?
    Thanks in advance
    Raja

    Hi
    We saw a similar issue in our environment. Suddenly all the proxy services were denying access. This happened after an IP address change on the servers running WLS Admin and OSB.
    By clearing all the temp/cache files on both servers, and ensuring that the WLS Authentication Setting did not 'cache' results we were able to resolve the problem. Obviously we needed to restart the WLSAdmin and OSB managed servers as well.
    Hope this helps.
    Thanks

  • Extracting MIME attachment from email using OSB proxy service - email transport

    Hi,
    I'm reading email messages(multipart/mixed) with attachments(pdf, zip, xml and csv) from MS Exchange Server 2010 using OSB proxy service email transport.I need to save the attachments to a local folder and process one of the attachments, an XML file. Below is the proxy service config.
    Proxy Service Configuration (Test1/Proxy Services/GetEmail)
    Actions: 
    General Configuration
    Service Type   Messaging Service
    Message Type Configuration
    Request Message Type 
    Text     
    Response Message Type 
    None     
    Transport Configuration
    Protocol   email
    Endpoint URI   mailfrom:mailserver.net:143
    Get All Headers   No
    Headers   
    EMAIL Transport Configuration
    Email Protocol   imap
    Service Account   Test1/Proxy Services/email_acc
    Managed Server   WLS_OSB1
    Polling Interval   30
    Read Limit   2
    Pass By Reference   false
    Pass Attachments By Reference   false
    Post Read Action   move
    IMAP Move Folder   processed
    Attachments   archive
    Download Directory   \\soasup-stor01\Vacancy\test\download
    Archive Directory   \\soasup-stor01\Vacancy\test\archive
    Error Directory   \\soasup-stor01\Vacancy\test\error
    Request Encoding   iso-8859-1
    Message Handling Configuration
    Transaction Required   Disabled
    Same Transaction For Response   Disabled
    Content Streaming   Disabled
    The polling is working fine. I've encoded the attachment variable to Base64 using a java callout.$attachments/ctx:attachment/ctx:body/ctx:binary-content has been passed as the byte[] input to the java method and the response is captured in $encodedAttachment. I've created a SaveFile BS(file type) with Request Message Type = Binary and Response Message Type = None. I've tried replacing the node ./ctx:binary-content in body variable with encodedAttachment in the request action of the Publish action to call the BS. One file is getting created with contents of the entire email, MIME headers and boundary parts along with the base64 encoded attachments.
    <Contents from the created file>
    MIME-Version: 1.0
    Content-Type: multipart/related; boundary=MIME_Boundary;
      type="binary/octet-stream"
    --MIME_Boundary
    Content-Type: binary/octet-stream
    Content-Transfer-Encoding: 8bit
    Thanks &amp; Regards,
    Samyajit Talukdar
    : [email protected]
    -----Original Message-----
    From: Samyajit Talukdar
    Sent: 10 April 2015 14:11
    To: MS MLRP Returns
    Subject: FW: 22222
    Thanks &amp; Regards,
    Samyajit Talukdar
    : [email protected]
    --MIME_Boundary
    Content-Type: application/vnd.ms-excel; name="soainfra_v$session.xls"
    Content-Transfer-Encoding: base64
    Content-Description: soainfra_v$session.xls
    Content-Disposition: attachment; filename="soainfra_v$session.xls";
      size=25618; creation-date="Thu, 27 Nov 2014 09:56:35 GMT";
      modification-date="Fri, 10 Apr 2015 09:28:23 GMT"
    0M8R4KGxGuEAAAAAAAAAAAAAAAAAAAAAPgADAP7/CQAGAAAAAAAAAAAAAAABAAAAAQAAAAAAAAAA
    EAAAJgAAAAEAAAD+////AAAAAAAAAAD/////////////////////////////////////////////
    AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
    AAAAAAAAAAAAAAAAAAA=
    --MIME_Boundary--
    If I put a delete action in the request to Publish action for SaveFile BS to delete the $attachments, the created file contains only the email body part and the attachment boundary part is missing.
    I've uploaded the OSB log with full trace enabled.
    How can I pass the  encodedAttachment to the BS for saving the files?
    Would iterating through the $aatachment/ctx:attachment give me the individual attachments for saving and processing, as there are separate binary-content refs in them?
    Any help to achieve my requirement is highly appreciated.
    Thanks in advance.

    Hi Manoj,
    Thanks for the quick reply to my query.
    The thing is, the link you have provided talks more from changing the business Service configurations i.e. the type of the service etc, but the concern is, that the Business Service is already Implemented and hence the change would not be an appropriate option for me.
    Please let me know, if any more information is required.
    Thanks & Regards,
    Anu

  • XSLT transformation in OSB Proxy Service

    Hello, I am trying to modify the answer from a WebService using an XSLT transformation in an OSB Proxy Service, but I am unable to do so. Here it is the content of the answer's body it receives:
    <ns0:getRecountUnitMovementsResponse xmlns:ns0="http://www.grifols.com/gds/interfaces/types/">
    <ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
    <ns4:GrpId>4</ns4:GrpId>
    <ns4:MovementType>960</ns4:MovementType>
    <ns4:DcCode>165</ns4:DcCode>
    <ns4:RecDcCode>165</ns4:RecDcCode>
    <ns4:UnitItemNumber>11-0001</ns4:UnitItemNumber>
    <ns4:RecUnitItemNumber xsi:nil="true"/>
    <ns4:Bol xsi:nil="true"/>
    <ns4:CustomerId xsi:nil="true"/>
    <ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
    <ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
    <ns4:MovStatusCode>SE</ns4:MovStatusCode>
    <ns4:Quantity>10</ns4:Quantity>
    </ns1:result>
    <ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
    <ns4:GrpId>1</ns4:GrpId>
    <ns4:MovementType>913</ns4:MovementType>
    <ns4:DcCode>165</ns4:DcCode>
    <ns4:RecDcCode>165</ns4:RecDcCode>
    <ns4:UnitItemNumber>11-0001</ns4:UnitItemNumber>
    <ns4:RecUnitItemNumber xsi:nil="true"/>
    <ns4:Bol xsi:nil="true"/>
    <ns4:CustomerId xsi:nil="true"/>
    <ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
    <ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
    <ns4:MovStatusCode>SE</ns4:MovStatusCode>
    <ns4:Quantity>15</ns4:Quantity>
    </ns1:result>
    <ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
    <ns4:GrpId>2</ns4:GrpId>
    <ns4:MovementType>913</ns4:MovementType>
    <ns4:DcCode>165</ns4:DcCode>
    <ns4:RecDcCode>165</ns4:RecDcCode>
    <ns4:UnitItemNumber>21-00001</ns4:UnitItemNumber>
    <ns4:RecUnitItemNumber xsi:nil="true"/>
    <ns4:Bol xsi:nil="true"/>
    <ns4:CustomerId xsi:nil="true"/>
    <ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
    <ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
    <ns4:MovStatusCode>SE</ns4:MovStatusCode>
    <ns4:Quantity>25</ns4:Quantity>
    </ns1:result>
    <ns1:result xsi:type="ns4:VO_PR_UnitsMovementsSDO" xmlns:ns1="http://www.grifols.com/gds/interfaces/types/" xmlns:ns4="/com/grifols/gds/webapp/inventoryCount/units/queries/common/" xmlns:ns0="http://xmlns.oracle.com/adf/svc/types/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:typ="http://www.grifols.com/gds/interfaces/types/">
    <ns4:GrpId>3</ns4:GrpId>
    <ns4:MovementType>959</ns4:MovementType>
    <ns4:DcCode>165</ns4:DcCode>
    <ns4:RecDcCode>165</ns4:RecDcCode>
    <ns4:UnitItemNumber>11-0001</ns4:UnitItemNumber>
    <ns4:RecUnitItemNumber xsi:nil="true"/>
    <ns4:Bol xsi:nil="true"/>
    <ns4:CustomerId xsi:nil="true"/>
    <ns4:DocumentDate>2011-01-01T09:00:00.0+01:00</ns4:DocumentDate>
    <ns4:PostingDate>2011-01-01T09:00:00.0+01:00</ns4:PostingDate>
    <ns4:MovStatusCode>SE</ns4:MovStatusCode>
    <ns4:Quantity>50</ns4:Quantity>
    </ns1:result>
    </ns0:getRecountUnitMovementsResponse>
    And what I am trying to do is replace all the "/com/grifols/gds/webapp/inventoryCount/units/queries/common/" for "http://www.something.else". I have succeeded replacing it if the attribute name is "xmlns" instead of "xmlns:ns4". However, that ":ns4" changes everything and I can't get it to work. Does anyone know how to do so?
    Thank you in advance. Don't hesitate to ask me for more information you may need.
    Jordi

    By the way, this is the XSLT transformation that works fine if we remove that ":ns4" from the attribute name:
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
    xmlns:source="/com/grifols/gds/webapp/inventoryCount/units/queries/common/"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    version="2.0">
    <xsl:output method="xml" encoding="iso-8859-1" indent="yes"/>
    <xsl:template match="source:*">
    <xsl:element name="{local-name()}" namespace="http://www.something.else">
    <xsl:apply-templates select="@*|node()"/>
    </xsl:element>
    </xsl:template>
    <xsl:template match="@*|node()">
    <xsl:copy>
    <xsl:apply-templates select="@*|node()"/>
    </xsl:copy>
    </xsl:template>
    </xsl:stylesheet>

  • Need Help:Handling CLOB in OSB Proxy Service

    Hello All-
    We have created an AQ in Oracle DB which will have the following message Structure:
    CREATE OR REPLACE TYPE enqueue_payload AS OBJECT
    ( field1 VARCHAR2(100),
    field2 VARCHAR2(100),
    field3 DATE,
    field4 VARCHAR2(100),
    field5 NUMBER,
    payload CLOB,
    In the Payload field we are enqueing an XML message.
    We have to use a OSB proxy service to dequeue the message from the AQ, transform it to another format and send to a SOA Composite.
    We created a AQ Adapter in Jdeveloper 11g and imported the WSDL, XSD and .jca jca binding file into the OSB project. And configured the OSB proxy service using the WSDL imported.
    However in OSB proxy service message flow when I try to create an XQUERY transformation, I see that the Payload field does not expose the structure of the XML message that is being enqueued. I even changed the message structure definition to have the payload field as XMLType. But it didn't help.
    On analyzing the XSD created by AQ Adapter, I see that the payload is being defined as "string" in the XSD.
    Inputs Needed
    =========
    1. How can we parse the payload field defined as CLOB/XMLType in OSB so that I can see the structure of the XML message it holds ?
    2. Is there any in-built function in OSB to convert it to XML ?
    3. Any other inputs in order to transform the XML message coming in the payload field as CLOB/XMLType
    Please provide your inputs and I hope that I have clearly explained my use case.
    Thanks in advance for your time and help!!
    Regards,
    Dibya

    Hi Atheek-
    Please find the logs below:
    Payload:: Indicates the actual payload with all the headers fields coming from AQ
    Payload After Applying the Function:: Indicates the data that is logged after applying the fn-bea:inlinedXML function.
    The function fn-bea:inlinedXML is extracting the data from the XML tags :(
    ####<Dec 20, 2010 12:14:26 PM GMT+05:30> <Info> <ALSB Logging> <vhydaiavm-03> <osb_server1> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-000A464703C2C06A4338> <6751713a0ce9f61d:-6e70b631:12d02855fef:-7ff4-0000000000000002> <1292827466595> <BEA-000000> < [PipelinePairNode1, PipelinePairNode1_request, stage1, REQUEST] Payload:: <apps:ORA_FUSION_LOAD_XMLTYPE xmlns:soap-env="http://schemas.xmlsoap.org/soap/envelope/" xmlns:apps="http://xmlns.oracle.com/xdb/APPS">
    *<RICE_ID>PRJ_INT_30</RICE_ID>*
    *<SOURCE_SYSTEM>ORACLE</SOURCE_SYSTEM>*
    *<DATETIME>2010-12-20T10:49:17.000Z</DATETIME>*
    *<TRANSACTION_ID>PRJ_INT_30-1</TRANSACTION_ID>*
    *<RECORD_COUNT>1</RECORD_COUNT>*
    *<PAYLOAD><![CDATA[<ALTPPSEGHIERARCHY><sgmt_name>Company</sgmt_name><include_parent_child>C</include_parent_child><parent_flex_value>P</parent_flex_value><child_flex_value_low>03</child_flex_value_low><child_flex_value_high>03</child_flex_value_high><start_date_active></start_date_active><end_date_active></end_date_active></ALTPPSEGHIERARCHY>]]></PAYLOAD>*
    *<ATTRIBUTE1 NULL="TRUE"/>*
    *<ATTRIBUTE2 NULL="TRUE"/>*
    *<ATTRIBUTE3 NULL="TRUE"/>*
    *<ATTRIBUTE4 NULL="TRUE"/>*
    *<ATTRIBUTE5 NULL="TRUE"/>*
    *</apps:ORA_FUSION_LOAD_XMLTYPE>>*
    ####<Dec 20, 2010 12:14:26 PM GMT+05:30> <Info> <ALSB Logging> <vhydaiavm-03> <osb_server1> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-000A464703C2C06A4338> <6751713a0ce9f61d:-6e70b631:12d02855fef:-7ff4-0000000000000002> <1292827466595> <BEA-000000> < [PipelinePairNode1, PipelinePairNode1_request, stage1, REQUEST] Payload After Applying the Function:: PRJ_INT_30ORACLE2010-12-20T10:49:17.000ZPRJ_INT_30-11>
    ####<Dec 20, 2010 12:14:26 PM GMT+05:30> <Info> <JDBC> <vhydaiavm-03> <osb_server1> <[ACTIVE] ExecuteThread: '3' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <6751713a0ce9f61d:-6e70b631:12d02855fef:-7ff4-0000000000000002> <1292827466688> <BEA-001128> <Connection for pool "EBS_DHAARA_DataSource" closed.>

  • OSB Proxy service HTTP kerberos authentication

    Is it possible to use kerberos authentification in OSB Proxy service?
    I need it in following scenarios.
    First scenario. We have Sharepoint Portal with Windows SSO. Our Sharepoint developers can invoke webservice on OSB (proxy service) with transfering of kerberos ticket (they talk about process named impersonation). In OSB proxy service I want to know credentials which are passed in kerberos ticket. How to do it? My Weblogic and OSB Consoles already have kerberos auth.
    Second scenario. How can I pass kerberos ticket from proxy service to business service without knowing info in this ticket. Like passthrought for basic auth.
    PS I had read info here: http://download.oracle.com/docs/cd/E13159_01/osb/docs10gr3/security/security_faq.html and paragraph about OSB SSO looks bad for this task...

    For weblogic console i had done several actions for enabling of kerberos auth... some of them are:
    - NegotiateIdentityAsserter was added to realm's providers,
    - web.xml of consle was configured in section ...<login-config><auth-method>CLIENT-CERT, FORM</auth-method>...
    etc...
    What actions i need to do for proxy service?
    PS Manoj sorry... wait... i missed your link before have not read info yet :) may be it will help...
    Edited by: Andrey L. on 17.03.2010 2:25

  • How to maintain messageId when using proxy services and mq??

    Hi
    I am a novice to oracle service bus and trying few transformations by configuring proxy services.
    Let me explain the problem I'm facing:
    I have created a business service and a proxy service and configured them in a synchronous way.
    I'm using MQ as a transport protocol....and message I'm passing and transforming is in xml format.
    these proxy and business services are functioning properly.....but at the another end i have created another pair of busines and proxy service which will be taking request message from earlier business service and putting it into another queue which is reference as a response queue by earlier proxy service.
    my second pair is also working properly. now the problem is that it is not maintaining message Id during all the routing.
    and that's why im not able to read the response message from the response queue because of message ID mismatch.
    Please help!!
    tell me if i have to do change any particular configuration settings to maintain the message id for my request message throughout the flow.
    Thanks
    Edited by: ChetakCs on Jun 14, 2010 7:19 AM

    Post this in OSB forum:
    SOA Suite

  • OSB Proxy service replying null.

    Hi,
    I am trying to invoke a OSB proxy service from a third party tool(SOAPUI). I am getting null as response. But I can see the response in OSB test page.Please help.
    Request Document
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soap:Header xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
    </soap:Header>
    <soapenv:Body>
    <sch:issueMaterialService xmlns:sch="http://www.morrisonsplc.co.uk/meatpoc/schema">
    <sch:UserName>string</sch:UserName>
    <sch:ResponsibilityName>string</sch:ResponsibilityName>
    <sch:BatchNumber>string</sch:BatchNumber>
    <sch:ItemNumber>string</sch:ItemNumber>
    <sch:Quantity>1.051732</sch:Quantity>
    <sch:UOMCode>string</sch:UOMCode>
    <sch:LotNumber>string</sch:LotNumber>
    </sch:issueMaterialService>
    </soapenv:Body>
    </soapenv:Envelope>
    Response Document
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
    <soapenv:Header/>
    <soapenv:Body>
    <sch:issueMaterialServiceResponse xmlns:sch="http://www.morrisonsplc.co.uk/meatpoc/schema">
    <sch:TransactionId/>
    <sch:SecondaryWIPIssueQty/>
    <sch:SecondaryWIPIssueUOM/>
    <sch:Messagecount>1.0</sch:Messagecount>
    <sch:MessageList>Error while setting the context</sch:MessageList>
    <sch:LotNumber>string</sch:LotNumber>
    <sch:Status>E</sch:Status>
    </sch:issueMaterialServiceResponse>
    </soapenv:Body>
    </soapenv:Envelope>

    It's strange!!! If you are getting response on test console then definitely SOAPUI will also get the response. Are you sure that it is OSB which is not sending response and it is not a problem with SOAPUI?
    Let us know your proxy configuration detail.
    Regards,
    Anuj

  • OSB Proxy Service routing

    Hi,
    I have a simple Proxy Service which consumes messages from a remote endpoint queue (source queue). The Proxy Service simply routes consumed messages to a Business Service which puts messages into another remote endpoint queue (destination queue).
    When I test passing a message to the Proxy Service using the OSB's Test Console, the Proxy Service routes the message to the Business Service okay where the message is then placed into the remote endpoint queue (destination queue) as expected. But, if I put a message into the remote source queue, I can see that the message gets consumed by the Proxy Service but the message remains as 'pending' and, either the Proxy Service does not route the message to the Business Service or, the Business Service does not put the message into the remote destination queue. What could the problem be?
    Thanks in advance for any help on this.

    Hello,
    Still looking for an answer to this.
    Scenario:
    When enabled, OSB Proxy Service removes any messages placed in remote endpoint URI queue, but it seems the messages do not flow within the Proxy Service's message flow itself. When the Proxy Service is enabled, the messages in the remote queue get removed but are seen to stay in a 'pending' state. When the Proxy Service is disabled, the messages get put back in the queue. What are the possible reasons as to why messages would not get processed within the Proxy Service's message flow? All the message flow does is, route the messages to a Business service which then sends the messages to another remote endpoint URI queue.
    PS: When a message is injected into the Proxy Service via the Test Console, the message flows/routes to Business Service okay without problems so I assume that the problem must lie in the inital remote queue/Proxy Service interface somewhere. Maybe permissions or transaction related issue? But I can't see any hints to anything wrong in configurations or server(s) logs...
    Thanks in advance for any help on this.

  • BEA-382051 No Transction Found on OSB Proxy Service

    Hi,
    I've a mq proxy service and which has properties enabled for 1. Transaction Required 2. Same Transaction Required for Response. Also added Routing Options with QoS to 'Exactly Once' to Publish and Service C/o actions.
    mq proxyQ --> local proxy1 -->localPS11 -->localPS12 -->localPS13
    mq proxyQ --> local proxy2 --> localPS21 -->localPS22 -->localPS23
    All these PS11,12,... have publish and service c/o for various DB operations like readBS, insertBS and updateBS.
    I searched the a few threads in the forum, Anuj also suggested to enable Routing Options with QoS to 'Exactly Once'.
    What I've done is I added and enabled this property to Publish/Service C/o which are calling [insertPS-->insertBS] and [updatePS-->updateBS] only.
    *NOT for [readPS-->readBS] services.*
    Is this causing the error? I mean,, do I need to enable for all Publish and S. c/o actions irrespective of readPS or updatePS?
    I also tried with httpProxy service instead of mqProxyService
    Error: BEA-382051 No Transction Found on the Current Thread
    Your suggestion is highly apprecited.
    Thank you
    Edited by: 1002815 on May 6, 2013 7:59 AM

    Hi Anuj & all,
    I just want to highlight my scenario and understand what happens that case...
    ListenerProxyService(mq-protocol with Transaction Enabled) is a one way(Request Type: XML and Response Type: None) and response is routed to business service which posts the message in REPLY MQ. However, publishing the response is happening on the Listener Proxy Response action of Route within Publish activity.
    My question here is ... Should I enable 'Same Transactin required for the Response' and add routing options with exactly once?
    [OR]
    'Transaction Required' for Request ONLY and no Routing Options required for publish activity?
    How does OSB handles transaction in both the cases?
    Appreciate your help,
    Thank you
    Edited by: 1002815 on May 7, 2013 10:02 AM

  • Consume JMS Unit-Of-Work message through OSB proxy service

    Hi,
    Anyone know how to consume a JMS Unit-Of-Work (UOW) message using an OSB Proxy Service of JMS type?
    I can submit a unit-of-work JMS message (which consists of multiple constituent messages) using an OSB proxy & business service combination and setting the UOW transport headers appropriately. I can also separately produce and consume Java objects via a JMS queue where the consumption is done via OSB proxy (of java request message type), but these aren't UOW messages.
    Apparently as soon as it is a UOW message then the message consumed is an ObjectMessage ArrayList and one has to use the "Java" request message type for the JMS consumer proxy, but I'm unsure of how to create the concurrent client jar to use it in the same proxy service's JMS transport configuration in order to output the ObjectMessage ArrayList (UOW message). 
    Ideally I'd like to consume a single UOW XML message via an OSB JMS proxy service.
    Any pointers would be appreciated.
    R

    Finally got this working!!
    For posterity: Needed to insert Java Object JMS messages on the OSB JMS producer (Business Service) side with correct UOW jms transport header set in route node. Then consume the Unit-Of-Work message on the other side via jms proxy service with "java" request message type, with appropriate jar containing the Object class as the "Client jar" in the JMS Transport configuration. In the same JMS consumer proxy I had to do a java callout, passing the contents of $body, using java.util.ArrayList and javax.jms.ObjectMessage, as input into a method (.. decodeJavaMessage(ArrayList<ObjectMessage> ...)). In this java callout class you can get to each individual ObjectMessage via typecasting the get() method on the Arraylist to (ObjectMessage) and then just typecast the getObject() on this Objectmessage into your original Java Class (same as what you inserted onto queue originally).
    Hope this saves someone some time in future!

Maybe you are looking for