Exception Handling with OC4J Web Services

Hi,
I want to throw some custom exceptions from my web services, based upon my business logic. From the documents I came to know that I can use "javax.xml.rpc.soap.SOAPFaultException" for the same. Following is the sample web service code which I'm trying in my environment.
import javax.ejb.Stateless;
import javax.jws.WebMethod;
import javax.jws.WebService;
import javax.xml.namespace.QName;
import javax.xml.rpc.soap.SOAPFaultException;
@WebService
@Stateless
public class TestService {
     @WebMethod
     public void greeting()
          throw new SOAPFaultException(new QName("uri", "local"),
     "My Fault String", "My Fault Actor", null);
Deployment of the web service goes fine and on the invocation of the "greeting" operation the exception is being thrown. But the problem is that, the soap response, which my web service client receives is as of follows,
<env:Envelope
xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:ns0="http://service.csm.nb.md.inglife.jp.co/">
<env:Body>
<env:Fault>
<faultcode>env:Server</faultcode>
<faultstring>Internal Server Error (Caught exception while handling request: oracle.oc4j.rmi.OracleRemoteException: javax.xml.rpc.soap.SOAPFaultException: My Fault String; nested exception is: javax.xml.rpc.soap.SOAPFaultException: My Fault String)</faultstring>
</env:Fault>
</env:Body>
</env:Envelope>
This means that OC4J again wraps the SOAPFaultException thrown by me. Is there any way by which I can avoid the further wrapping of my exceptions? If there is anything wrong in my approach please do let me know.
Regards,
Dipu

This is one of the "classic" design problems in this kind of architecture. And, unfortunately, the answer is "it depends on how you think you need to handle it." And I'm sure there are plenty of "gurus" that will tell you one way or another is the only way to do it.
I'll be more honest: I'll give you a couple of personal suggestions, based on experience in this architecture. These are suggestions - you may do with them what you will. I will not say this is the best, most correct, or even remotely relevant to what you're doing.
If it's simple data validation for "typing" (e.g. String, number, Date, etc.), that is taken care of when you attempt to stuff in the information into the appropriate DTO. If it's more "sophisticated" than that (must be in a certain range, etc.), that particular checking should probably be delegated from your Controller to a helper class. That not only saves the "expense" of transmitting the information back and forth across the wire, it's "faster" to the end user so say "Ooopsie" by redirecting back to the form right then. Basically the same thing if the types are wrong.
That only leaves the "big" problems in the business layer (EJBs), where you have to deal with concurrency, database failures, etc. Generally these kinds of exceptions are thrown back to to the Controller in one of two forms:
1) a sublass of RuntimeException, which signals that some Very Bad Things have happened in your container. EJBException is one like that and you can see where it's being thrown from.
2) a subclass of Exception, also called "application exceptions." They are usually something like a "duplicate record" or a validation-like error (which you mentioned) like a missing field. They're used as a signal to a failure in the logic, not the container. That way you have to decide at what layer of your architecture they should be handled and/or passed on to the next.

Similar Messages

  • Problems with OC4J Web services and Flex SOAPEncoder

    Hello!
    I got a problem trying to execute a web service running in
    Oracle OC4j 10.1.3.3, and a client side with Flex3. I generated the
    scripts for using the web service using Flex builder 3, but it's
    not making a valid call to web service. I debugged the call
    operation to the Flex SOAPEncoder which seems to generate an
    invalid soap message. The SOAPEncoder generates the following
    message;
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="
    http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="
    http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="
    http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body>
    <tns:getDocuments xmlns:tns="
    http://modultek.atonpdm.document/">
    <tns:getDocuments>
    <tns:String_1>service manual</tns:String_1>
    </tns:getDocuments>
    </tns:getDocuments>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Where the correct working soap message should be;
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="
    http://schemas.xmlsoap.org/soap/envelope/"
    xmlns="
    http://www.w3.org/2001/XMLSchema"
    xmlns:xsi="
    http://www.w3.org/2001/XMLSchema-instance">
    <SOAP-ENV:Body>
    <tns:getDocuments xmlns:tns="
    http://modultek.atonpdm.document/">
    <tns:String_1>service manaual</tns:String_1>
    </tns:getDocuments>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    Problem in the first message is that Flex SOAPEncoder
    generates an extra <tns:getDocuments> child tag, and Oracle
    app server can't handle it.
    Has someone any idea why SOAPEncoder is generating the extra
    operation tag, and is this behaviour configurable somehow or is the
    soapencoder broken?
    The wsdl is included in the following;
    <?xml version="1.0" encoding="UTF-8" ?>
    - <definitions xmlns="
    http://schemas.xmlsoap.org/wsdl/"
    xmlns:soap12="
    http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:soap="
    http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:xsd="
    http://www.w3.org/2001/XMLSchema"
    xmlns:mime="
    http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:tns="
    http://modultek.atonpdm.document/"
    name="DocumentOperationsService" targetNamespace="
    http://modultek.atonpdm.document/">
    - <types>
    - <schema xmlns="
    http://www.w3.org/2001/XMLSchema"
    xmlns:wsdl="
    http://schemas.xmlsoap.org/wsdl/"
    xmlns:xsi="
    http://www.w3.org/2001/XMLSchema-instance"
    xmlns:soap11-enc="
    http://schemas.xmlsoap.org/soap/encoding/"
    targetNamespace="
    http://modultek.atonpdm.document/"
    elementFormDefault="qualified">
    - <complexType name="SimpleDocumentDM">
    - <sequence>
    <element name="docGroupDesc" type="string"
    nillable="true" />
    <element name="docRev" type="string" nillable="true"
    />
    <element name="docId" type="string" nillable="true" />
    <element name="docGroup" type="string" nillable="true"
    />
    <element name="docDesc1" type="string" nillable="true"
    />
    <element name="docDesc2" type="string" nillable="true"
    />
    <element name="docCode" type="string" nillable="true"
    />
    <element name="docDesc3" type="string" nillable="true"
    />
    <element name="docDesc4" type="string" nillable="true"
    />
    </sequence>
    </complexType>
    <element name="getDocuments" type="tns:getDocuments"
    />
    - <complexType name="getDocuments">
    - <sequence>
    <element name="String_1" type="string" nillable="true"
    />
    </sequence>
    </complexType>
    <element name="getDocumentsResponse"
    type="tns:getDocumentsResponse" />
    - <complexType name="getDocumentsResponse">
    - <sequence>
    <element name="return"
    type="tns:CollectionOfSimpleDocumentDM" nillable="true" />
    </sequence>
    </complexType>
    - <complexType name="CollectionOfSimpleDocumentDM">
    - <sequence>
    <element name="item" type="tns:SimpleDocumentDM"
    minOccurs="0" maxOccurs="unbounded" />
    </sequence>
    </complexType>
    <element name="getSimpleDocumentInformation"
    type="tns:getSimpleDocumentInformation" />
    - <complexType name="getSimpleDocumentInformation">
    - <sequence>
    <element name="String_1" type="string" nillable="true"
    />
    </sequence>
    </complexType>
    <element name="getSimpleDocumentInformationResponse"
    type="tns:getSimpleDocumentInformationResponse" />
    - <complexType
    name="getSimpleDocumentInformationResponse">
    - <sequence>
    <element name="return" type="tns:SimpleDocumentDM"
    nillable="true" />
    </sequence>
    </complexType>
    </schema>
    </types>
    - <message name="DocumentOperations_getDocuments">
    <part name="parameters" element="tns:getDocuments" />
    </message>
    - <message
    name="DocumentOperations_getDocumentsResponse">
    <part name="parameters"
    element="tns:getDocumentsResponse" />
    </message>
    - <message
    name="DocumentOperations_getSimpleDocumentInformation">
    <part name="parameters"
    element="tns:getSimpleDocumentInformation" />
    </message>
    - <message
    name="DocumentOperations_getSimpleDocumentInformationResponse">
    <part name="parameters"
    element="tns:getSimpleDocumentInformationResponse" />
    </message>
    - <portType name="DocumentOperations">
    - <operation name="getDocuments">
    <input message="tns:DocumentOperations_getDocuments"
    />
    <output
    message="tns:DocumentOperations_getDocumentsResponse" />
    </operation>
    - <operation name="getSimpleDocumentInformation">
    <input
    message="tns:DocumentOperations_getSimpleDocumentInformation" />
    <output
    message="tns:DocumentOperations_getSimpleDocumentInformationResponse"
    />
    </operation>
    </portType>
    - <binding name="DocumentOperationsSoapHttp"
    type="tns:DocumentOperations">
    <soap:binding style="document" transport="
    http://schemas.xmlsoap.org/soap/http"
    />
    - <operation name="getDocuments">
    <soap:operation soapAction="" />
    - <input>
    <soap:body use="literal" />
    </input>
    - <output>
    <soap:body use="literal" />
    </output>
    </operation>
    - <operation name="getSimpleDocumentInformation">
    <soap:operation soapAction="" />
    - <input>
    <soap:body use="literal" />
    </input>
    - <output>
    <soap:body use="literal" />
    </output>
    </operation>
    </binding>
    - <service name="DocumentOperationsService">
    - <port name="DocumentOperationsBean"
    binding="tns:DocumentOperationsSoapHttp">
    <soap:address location="
    http://procyon:8888/atonpdm/DocumentOperationsBean"
    />
    </port>
    </service>
    </definitions>
    Best regards, Janne

    I am having the exact same problem. The SOAPEncoder is adding
    an additional tag and the server thinks the envelope is not
    properly formatted and therefore does not know what to do with it.
    Is there any fix for this yet? Or has it even been reported as a
    bug?

  • How webDynpro handles exception thrown by adaptive web service

    Hi people,
    in design time, webdynpro can handle web service's exception by defining return structure based on the <b>Fault </b>which is the exception defined in the web service. But in the runtime, when web service throws exception, webDynpro can not handle it, WD framework will throw nullPointerException.
    The reason behind it might be: let me assume a WS <b>getEmployeeNumber</b>, the WS returns employee number as a element <b><EmployeeNumber></b>12345<b></EmployeeNumber></b> in the return SOAP document. I think WD always expects the element <b><EmployeeNumber></b> in the SOAP document, but in case of exception, web service throws exception and will not provide employee number in the return SOAP which is logical, thus the element <EmployeeNumber> will not be available in the SOAP document, therefore causes WD framework to raise <b>nullPointerException</b>.
    So any of you have any suggestion to make webDynpro working in case an exception is thorwn in the web service?
    Thanks for your infor
    Jayson

    To encourage people, I include the text of the xml response from the test of Web Service Navigator window :
    HTTP/1.1 500 Internal Server Error
    Connection: close
    Server: SAP J2EE Engine/6.40
    Content-Type: text/xml; charset=UTF-8
    Set-Cookie: <value is hidden>
    Date: Mon, 27 Mar 2006 09:30:50 GMT
    <SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" >
    <SOAP-ENV:Body>
    <SOAP-ENV:Fault>
    <faultcode>SOAP-ENV:Client</faultcode>
    <faultstring>Hi, I'm the new exception</faultstring>
    <detail>
    <ns1:throwException_com.sap.demo.testexception.TestException xmlns:ns1='urn:TestExceptionServiceWsd/TestExceptionServiceVi' xmlns:pns='urn:com.sap.demo.testexception'>
    <pns:message>Hi, I'm the new exception</pns:message>
    </ns1:throwException_com.sap.demo.testexception.TestException>
    </detail>
    </SOAP-ENV:Fault>
    </SOAP-ENV:Body>
    </SOAP-ENV:Envelope>
    I've found too a strange workaround :
    The fact seems that you have to design your session bean without throwing custom exceptions, then generates the VI and after that, adding the custom exceptions throws.
    Or if you don't want to modify the bussiness methods.
    The point is to eliminate the exceptions (faults) sections from the VI and WS deployment descriptor.
    You have to access from Package Explorer, and edit with a Text Editor the following files :
    *.videf from the package, and remove <Function.Faults> sections
    ws-deployments-descriptor.xml in META-INF, and remove <fault> sections
    After that, the WS Configurations will give an error, so delete the configuration and remake it. Now, the VI stills looks bad, so close the project, close NetViewer and reopen it to flush whatever cache it seems to keep.
    Now, your VI will looks better without exceptions, and you'll get their messages when you catch them in the WebDynpro applicattion.
    So, now the question is: Could anybody explain me why ?

  • Problem with Oracle Web Service Proxies reusing classes and exceptions

    We have an application that have many web services and we're having a really hard time working with Oracle Web Service Proxy. We have many web services that share the same classes for parameters and exceptions. When we generate de proxy classes, it generates a lot of _LiteralSerializer classes. Because I'm reusing the same classes and exceptions it generates the same _LiteralSerializer classes for this classes and they get replaced. For Example
    I have classes A and B and Web Services X and Y that use this classes. When I generate the 2 proxies it generates A_LiteralSerializer and B_LiteralSerializer on the 2 proxies and they get replaced and I get "No serlalizers for A class or B class". This problems repeats a lot of times and this problem is a huge risk for our project. We're using JDeveloper 10.1.3.4.
    Is there a way to avoid this with Oracle Web Service Proxies?
    Regards,
    Néstor

    Resolved when I create a deployement profile explicitly.
    The Webservice.deploy that gets created automatically when I create a web service was giving this issue.
    Thanks
    Saikrishna

  • Problem with CFMX web service function return

    I made a post yesterday about a web service function I was
    writing, as it turns out my post was extremly incorrect for my
    problem. With this web service function I can return an array just
    fine, I can return one instance of an object just fine, however,
    when I try to return an array of the object I keep getting the
    error:
    Could not perform web service invocation "SelectGames"
    because AxisFault faultCode: {
    http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
    faultSubcode: faultString: [org.apache.axis.AxisFault : ; nested
    exception is: coldfusion.xml.rpc.CFCInvocationException:
    [java.lang.IncompatibleClassChangeError : Dependent CFC type(s)
    have been modified. Please refresh your web service client.]];
    nested exception is: coldfusion.xml.rpc.CFCInvocationException:
    [org.apache.axis.AxisFault : ; nested exception is:
    coldfusion.xml.rpc.CFCInvocationException:
    [java.lang.IncompatibleClassChangeError : Dependent CFC type(s)
    have been modified. Please refresh your web service client.]]
    faultActor: faultNode: faultDetail: {
    http://xml.apache.org/axis/}stackTrace:
    AxisFault faultCode: {
    http://schemas.xmlsoap.org/soap/envelope/}Server.generalException
    faultSubcode: faultString: [org.apache.axis.AxisFault : ; nested
    exception is: coldfusion.xml.rpc.CFCInvocationException:
    [java.lang.IncompatibleClassChangeError : Dependent CFC type(s)
    have been modifie..
    which basically means that the CF server needs restarted.
    However if I restart the CF server, no matter how many times I am
    still getting this error. If I change up my web service function to
    return just a normal array of integers or strings, or I change it
    to return one instance of the arbritrary complex type it all works
    just fine. I am still a little new on this subject and any
    enlightenment would be great. If anyone has found a way around this
    please let me know.
    Here is my complex type:
    <cfcomponent>
    <cfproperty name="Game_id" type="numeric">
    <cfproperty name="gameDate" type="date">
    <cfproperty name="Starttime" type="string">
    <cfproperty name="Place" type="string">
    <cfproperty name="Level" type="string">
    <cfproperty name="Sport" type="string">
    <cfproperty name="Gender" type="string">
    <cfproperty name="Opponent" type="string">
    <cfproperty name="Type" type="string">
    <cfproperty name="Link" type="string">
    </cfcomponent>
    I loop trhough a query and set a cfobject of the types above,
    then I append that object to an array and try t o return the array.
    Here is the basics of the loop:
    <cfset theArray = arrayNew(1)>
    <cfobject component = "games" name = "test>
    <cfloop query ...>
    <!--- set values to test ---->
    <cfset arrayApend(theArray, test)>
    </cfquery>
    <cfreturn theArray>
    my return type is array, I think the problem is I need to
    specify the return type to be an array of arbritray complex types
    which is impossible to do in CF. Anyone find a way to get around
    this?? Any feed back at all would be greatly appreciated.

    Yes, I have tried it and return type any does not work in
    this situation since this function is being consumed by a web
    service. It needs to be in the form of an array of arbritrary type
    that is defined in a cfc file. Since this is WSDL the returntype
    has to be specified to every last bit.

  • Basic auth with RESTful WEb service and Web Service reference

    Hi, All,
    We have made much progress on getting an application working wtih RESTful web services but now are trying to figure out how to lock down a RESTful Web service while making it available for a particular application.
    We are using one of the sample 'emp' table web services that come with Apex 4.2 and are trying to apply Basic Auth to the WEb Service via Weblogic filter defined in the web.xml file. That works fine. I now get challenged when I try to go to :
    https://wlogic.edu/apex/bnr/ace/hr/empinfo/
    And when I authenticate to that challenge I am able to get the data. (we are usiing LDAP authentication at the Weblogic level)
    However, I am not sure how to get same basic authentication to work with the Web Service reference in my application. I see the error message in the application when I try to call that Web Service:
    401--Unauthorized<
    And I see:
    "The request requires user authentication. The response MUST include a WWW-Authenticate header field (section 14.46) containing a challenge applicable to the requested resource. The client MAY repeat the request with a suitable Authorization header field (section 14.8). If the request already included Authorization credentials"
    How do I provide the credentials in the Web REference or do I provide credentials in the Application?
    Web service works fine if I remove the RESTful web service basic auth from the Web.xml file.
    Should we NOT use Weblogic basic auth and instead use basic auth from Workspace RESTful web service definition. If so, how do we implement THAT basic auth in the Web Service definition and in the Web SErvice Reference on the application?
    Thanks,
    Pat

    What I mean is diid you try to use the PL/SQL package for APEX webservice. Here is an example I use (modified and shortened, just to show how much better this is than to use it from the application).
    CREATE OR REPLACE PACKAGE webservice_pkg
    IS
       PROCEDURE create_webservice (
          p_id            IN       NUMBER,
          p_message       OUT      VARCHAR2,
          p_workspace     IN       VARCHAR2 DEFAULT 'MY_WORKSPACE',
          p_app_id        IN       NUMBER DEFAULT v ('APP_ID'),
          p_app_session   IN       VARCHAR2 DEFAULT v ('SESSION'),
          p_app_user      IN       VARCHAR2 DEFAULT v ('APP_USER')
    END webservice_pkg;
    CREATE OR REPLACE PACKAGE BODY webservice_pkg
    IS
       PROCEDURE set_credentials (
          p_workspace     IN   VARCHAR2,
          p_app_id        IN   NUMBER,
          p_app_session   IN   VARCHAR2,
          p_app_user      IN   VARCHAR2
       IS
          v_workspace_id   NUMBER;
       BEGIN
          SELECT workspace_id
            INTO v_workspace_id
            FROM apex_workspaces
           WHERE workspace = p_workspace;
          apex_util.set_security_group_id (v_workspace_id);
          apex_application.g_flow_id := p_app_id;
          apex_application.g_instance := p_app_session;
          apex_application.g_user := p_app_user;
       END set_credentials;
       PROCEDURE create_webservice (
          p_id            IN       NUMBER,
          p_message       OUT      VARCHAR2,
          p_workspace     IN       VARCHAR2 DEFAULT 'MY_WORKSPACE',
          p_app_id        IN       NUMBER DEFAULT v ('APP_ID'),
          p_app_session   IN       VARCHAR2 DEFAULT v ('SESSION'),
          p_app_user      IN       VARCHAR2 DEFAULT v ('APP_USER')
       IS
          v_envelope          VARCHAR2 (32000);
          v_server            VARCHAR2 (400);
          v_url               VARCHAR2 (4000);
          v_result_url        VARCHAR2 (1000);
          v_collection_name   VARCHAR2 (40)    := 'PDF_CARD';
          v_message           VARCHAR2 (4000);
          v_xmltype001        XMLTYPE;
       BEGIN
          v_url := v_server || '.myserver.net/services/VisitCardCreator?wsdl';
          FOR c IN (SELECT *
                      FROM DUAL)
          LOOP
             v_envelope :=
                   '<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" '
                || 'xmlns:bran="http://www.myaddress.com">'
                || CHR (10)
                || '<soapenv:Header/><soapenv:Body>'
                || CHR (10)
                || '<parameter:'
                || 'some_value'
                || '>'
                || CHR (10)
                || '<bran:templateID>'
                || p_id
                || '</bran:templateID>'
                || '</soapenv:Body>'
                || CHR (10)
                || '</soapenv:Envelope>';
          END LOOP;
          set_credentials (p_workspace, p_app_id, p_app_session, p_app_user);
          BEGIN
             apex_web_service.make_request
                                         (p_url                  => v_url,
                                          p_collection_name      => v_collection_name,
                                          p_envelope             => v_envelope
             p_message := 'Some message.';
          EXCEPTION
             WHEN OTHERS
             THEN
                v_message :=
                      v_message
                   || '</br>'
                   || 'Error running Webservice Request. '
                   || SQLERRM;
          END;
          BEGIN
             SELECT    v_result_url
                    || EXTRACTVALUE (VALUE (t),
                                     '/*/' || 'Return',
                                     'xmlns="http://www.myaddress.com"'
                    xmltype001
               INTO v_result_url,
                    v_xmltype001
               FROM wwv_flow_collections c,
                    TABLE
                        (XMLSEQUENCE (EXTRACT (c.xmltype001,
                                               '//' || 'Response',
                                               'xmlns="http://www.myaddress.com"'
                        ) t
              WHERE c.collection_name = v_collection_name;
          EXCEPTION
             WHEN OTHERS
             THEN
                v_message := v_message || '</br>' || 'Error reading Collection.';
          END;
       EXCEPTION
          WHEN OTHERS
          THEN
             p_message := v_message || '</br>' || SQLERRM;
       END create_webservice;
    END webservice_pkg;
    /If you use it this way, you will find out what the problem is much faster.
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.apress.com/9781430235125
    http://apex.oracle.com/pls/apex/f?p=31517:1
    http://www.amazon.de/Oracle-APEX-XE-Praxis/dp/3826655494
    -------------------------------------------------------------------

  • Cannot connect Service Manager with Orchestrator Web Service URL

    Dear TechNet User,
    i cannot connect my service manager console with my Orchestrator Webservice. i try to connect to "http://AMSCO01:81/Orchestrator.svc" ... the user i´ve choose is local admin on the orchestrator Machine.
    Thats the Logfile:
    Date: 07.10.2013 15:23:16
    Application: System Center Service Manager
    Application Version: 7.5.2905.0
    Severity: Error
    Message: Could not connect to the Orchestrator web service.
    System.Data.Services.Client.DataServiceQueryException: An error occurred while processing this request. ---> System.Data.Services.Client.DataServiceClientException: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
    <title>404 - File or directory not found.</title>
    <style type="text/css">
    <!--
    body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
    fieldset{padding:0 15px 10px 15px;}
    h1{font-size:2.4em;margin:0;color:#FFF;}
    h2{font-size:1.7em;margin:0;color:#CC0000;}
    h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
    #header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
    background-color:#555555;}
    #content{margin:0 0 0 2%;;}
    .content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;;}
    -->
    </style>
    </head>
    <body>
    <div id="header"><h1>Server Error</h1></div>
    <div id="content">
     <div class="content-container"><fieldset>
      <h2>404 - File or directory not found.</h2>
      <h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.</h3>
     </fieldset></div>
    </div>
    </body>
    </html>
       at System.Data.Services.Client.QueryResult.Execute()
       at System.Data.Services.Client.DataServiceRequest.Execute[TElement](DataServiceContext context, QueryComponents queryComponents)
       --- End of inner exception stack trace ---
       at System.Data.Services.Client.DataServiceRequest.Execute[TElement](DataServiceContext context, QueryComponents queryComponents)
       at System.Data.Services.Client.DataServiceQuery`1.Execute()
       at System.Data.Services.Client.DataServiceQuery`1.GetEnumerator()
       at Microsoft.EnterpriseManagement.ServiceManager.Sdk.Connectors.OrchestratorRunbookConnector.GetRunbookFolders(OrchestratorContext scoContext, Folder parentFolder)
       at Microsoft.EnterpriseManagement.ServiceManager.UI.Administration.Connectors.Orchestrator.OrchestratorConnectorHelper.ValidateServerConnection(Boolean found)
    System.Data.Services.Client.DataServiceClientException: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
    <title>404 - File or directory not found.</title>
    <style type="text/css">
    <!--
    body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
    fieldset{padding:0 15px 10px 15px;}
    h1{font-size:2.4em;margin:0;color:#FFF;}
    h2{font-size:1.7em;margin:0;color:#CC0000;}
    h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
    #header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF;
    background-color:#555555;}
    #content{margin:0 0 0 2%;;}
    .content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;;}
    -->
    </style>
    </head>
    <body>
    <div id="header"><h1>Server Error</h1></div>
    <div id="content">
     <div class="content-container"><fieldset>
      <h2>404 - File or directory not found.</h2>
      <h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.</h3>
     </fieldset></div>
    </div>
    </body>
    </html>
       at System.Data.Services.Client.QueryResult.Execute()
       at System.Data.Services.Client.DataServiceRequest.Execute[TElement](DataServiceContext context, QueryComponents queryComponents)
    any ideas? Thank you very much!

    Hi,
    I am unable to connect to
    http://hostname:81/Orchestrator2012/Orchestrator.svc/ in IE and am getting the same error while creating the connector.
    I can connect to orchestrator via http://hostname:81/ but it still gives me the same error when I create the connector (Cannot connect Service Manager with Orchestrator Web Service).
    anyone seen it before?

  • Does ws adapter only work with asynchronous web service?

    Hi all,
    can you please confirm whether or not ws adapter (PI 7.1) only works with asynchronous web service?
    I have created an async. outbound service interface in PI 7.1, generated the client proxy in ECC, created an web service based on the proxy, wrote a test program to call the web service (PI scenario uses ws adapter in the sender CC). Everything works fine.
    Then I did the same thing with sync. outbound service interface. I got exception while calling the web service in ECC.
    I've heard that ws adapter is designed for async. communication. Does it mean that it won't work with sync. web service?
    I haven't seen any official SAP document saying taht ws adapter only works for async. web service. If you have any, can you please share it?
    Thanks
    Jayson

    Thank you all for your information.
    The error I got when calling the proxy with logical port (web service) is:
    SOAP:1,007 SRT: Unsupported xstream found: ("HTTP Code 404  : Not Found") 
    I will debug it to see what exactly happens. And will keep you guys updated.
    Just debugged, the error is because the http header's content type is text/html while it should be test/xml. However this type is set by the ws runtime, not by the application. Anybody has an idea about this?
    Jayson
    Edited by: Jayson on Feb 18, 2009 10:04 AM
    Edited by: Jayson on Feb 18, 2009 12:11 PM

  • Error in "Build Online Store with Oracle9i Web Services" sample

    After downloading and installing the "Build Online Store with Oracle9i Web Services" example from "http://otn.oracle.com/sample_code/tech/java/web_services/content.html". I receive the following runtime error message at the ShowShippingMode.jsp page :
    "http://www.zznet.ch:7777/WS-Demo/ShowProducts.jsp"
    [SOAPException: faultCode=SOAP-ENV:Server; msg=]
    To start the application go to "http://www.zznet.ch:7777/WS-Demo/Login.jsp".
    What is wrong?

    Both. I deployed the application under the IAS (902) and a standalone (903)environment. The IAS (port 7777) an the standalone oc4j (port 8888) is running with the same error.
    P.S. The server is down today for hardware technical reasons

  • Exception in execution of web service

    Hi Experts,
    I have a WSDL which is working fine in WS Navigator, but if I import it as model in WD JAVA and apply the template on component controller to read the service and execute the method of that service, I am getting a run time error.  Error that I am getting is as follows
    Exception on execution of web service on destination 'WD_Icat_ApplicationManager_Dest' for operation 'getScenarioDetail' in interface 'ScenarioManager'
    My destination is also working fine as I can test the service in WS Navigator using this destination with correct output.
    Please suggest some solution.
    Regards
    Pranav
    PS: Log i am getting states
    com.sap.esi.esp.service.server.query.discovery.ExtendedServiceException: com.sap.engine.services.webservices.espbase.query.exceptions.ObjectNotExistsException: ScenarioManager using destination : WD_Icat_ApplicationManager_Dest
         at com.sap.esi.esp.service.server.query.discovery.DestinationsHelperImplSoa.getEndpointConfigurations(DestinationsHelperImplSoa.java:1459)
         at com.sap.esi.esp.service.server.query.discovery.DestinationsHelperImplSoa.getWSDLUrl(DestinationsHelperImplSoa.java:1025)
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.getWSDLUrl(GenericServiceFactory.java:578)
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService_NewInstance(GenericServiceFactory.java:404)
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService(GenericServiceFactory.java:252)
         at com.sap.engine.services.webservices.espbase.client.dynamic.GenericServiceFactory.createService(GenericServiceFactory.java:217)

    Hi
    Similar therad is already replied. Please dont write the same problem in different forum . You will be assist that is for sure.(If you state the problem clearly)
    Best Regards
    Satish Kumar

  • Composite Application with RESTful Web Services

    Hello!
    Is it possible to build Composite Application with RESTful Web Services only. I use Glassfishe 2.1 and OpenESB 2.1.
    Can you point me on some tutorials on the net to read about using RESTful Web Services in BPEL?

    Hi Gabriel,
    Let me try to answer some of your questions:
    1) The "Requires Secure Access" attribute of a resource handler controls whether this handler must be accessed/consumed only over SSL (HTTPS). Oracle Database Cloud Schema Service is only offered over SSL, so this attribute does not have any effect on RESTful services deployed in this environment (because secure access is always required and there is no other way). That said, if you want to access such web service from your own APEX instance, your instance must have Oracle Wallet configured with appropriate SSL certificate.
    2) The URI parameters are not required. If your web service returns data for many entities (for example, list of employees in employees/), you may not need a parameter. If your web service returns data for one specific entity (for example, details of one employee in employees/{id}), you may want to identify that entity with a URI parameter.
    3) You can have many URI parameters, for example: customers/{id}/orders/{order_id}.
    4) Yes, these are the same HTTP methods/verbs you would use from PHP.
    5) If you are trying this POST example from your own APEX instance (not Oracle Database Cloud Schema Service) and you are trying to access a web service over SSL, then it is likely that the Oracle Wallet used by your instance does not include the required SSL certificate(s), or the Oracle Wallet is not configured at all.
    6) I recommend to check RESTful Web Services for the Oracle Database Cloud white paper and Oracle REST Data Services Developers Guide. Oracle REST Data Services is the technology that enables RESTful services in the Oracle Database Cloud Schema Service.
    You can certainly create your own web services in the Oracle Database Cloud Schema Service and consume them from the same environment.
    Vlad

  • Exception while accessing a web service using adaptive web service

    Hi All,
    I have accessed a web service from backend ( ABAP) and when i deploy the model i get an exception :
         Exception on execution of web service on destination 'DEFAULT_WS_EXECUTION_DEST' for operation 'ZGetWorkpackages' in interface '_-CAG_-Z_GET_WORKPACKAGES'
    can any one help?
    Regards
    Deepa

    hi
    After you have integrated  webservice ,  have you created the destinations in the visual admin tool .
    during calling the webservice  you might  selected the option of using logical destinations and used the
    default destinations as it is , and  are these destinations configured in the visula admin .
    if so please check the parameters you have provided ,  this would solve yourproblem
    Thanks

  • Best practice for integrating oracle atg with external web service

    Hi All
    What is the best practice for integrating oracle atg with external web service? Is it using integration repository or calling the web service directly from the java class using a WS client?
    With Thanks & Regards
    Abhishek

    Using Integration Repository might cause performance overhead based on the operation you are doing, I have never used Integration Repository for 3rd Party integration therefore I am not able to make any comment on this.
    Calling directly as a Java Client is an easy approach and you can use ATG component framework to support that by making the endpoint, security credentials etc as configurable properties.
    Cheers
    R
    Edited by: Rajeev_R on Apr 29, 2013 3:49 AM

  • Slow attachment upload with Exchange Web Services (Outlook 2011 for Mac?)

    We're experiencing slow attachment upload with Exchange Web Services versus MAPI, OWA, and Outlook Anywhere.  I'm not totally certain that it is Exchange Web Services or specifically Outlook 2011 for Mac.  I attempted to test with the Mac Mail
    App, but it makes it difficult to tell when the attachment has been uploaded and the file has been sent.  Here's what we're seeing (10mb file):
    MAPI / RPC/HTTPS / OWA: 10-15 seconds upload time
    Exchange Web Services (Outlook 2011 for Mac): 60-90 seconds upload time
    Thoughts? Any idea why we would see such a drastic difference in attachment upload time?  Any way to prove definitively that it is Exchange Web Services vs. Outlook 2011 for Mac?  We've tried it from multiple locations with multiple different machines,
    and although the upload times vary (some locations have more bandwidth etc) the ratios remain similar.

     
    Hi ,
    Does all the user occurred the issue ?
    If only special user, I recommend you do the following steps and test:
    1.Remove and re-add the email account and check if this helps to resolve the issue.
    To remove and add the email accounts:
    Open Outlook > GO to Tools > Accounts > Click on "Minus" symbol to remove and "Plus" to add an Email account.
    2.Creating a new user profile:
    http://support.microsoft.com/kb/2439218/
    3. If the issue persists, rebuild the data base and check the results:
    http://support.microsoft.com/kb/2360509
    You can also post it on Office for MAC forum  to get special support about the difference between Outlook and Outlook for MAC.
    http://www.microsoft.com/mac/support
    Wendy Liu
    TechNet Community Support

  • Problem with RESTful web service

    I am running into a problem with Flex Web Services (REST) in trying to get the proper format returned. I can see that the HTTP header is set to
    Accept: */*;
    rather than
    Accept: application/xml
    when sending the request. The web service was generated via the web services HTTP data services wizard. I edited it to set the resultFormat to xml
        // Constructor
        public function _Super_UsersService()
            // initialize service control
            _serviceControl = new mx.rpc.http.HTTPMultiService();
             var operations:Array = new Array();
             var operation:mx.rpc.http.Operation;
             var argsArray:Array;
             operation = new mx.rpc.http.Operation(null, "getUsers");
             operation.url = "http://localhost:8888/users";
             operation.contentType = "";
             operation.method = "GET";
             operation.resultFormat = "xml";
             //operation.serializationFilter = serializer0;
             operation.properties = new Object();
             operation.properties["xPath"] = "/";
             operation.resultType = valueObjects.Users;
             operations.push(operation);
             _serviceControl.operationList = operations; 
             model_internal::initialize();
    How does one configure the accept header?

    Hi,
    I have posted a simple application with the RESTful reference:
    http://apex.oracle.com/pls/apex/f?p=13758
    I can give you full privileges on this so you can look at the WEB service reference. Shall I send to you separately for login user?
    It is using the RESTful service: http://apex.oracle.com/pls/apex/nd_pat_miller/demo/employee/{deptno}
    This RESTful service tests fine when I test from within the RESTful web service module of the Workspace.
    I based this on the Video demo tutorial for RESTful web service that Oracle published for 4.2 release. The video seemed to exclude the {deptno} in the URL but when I try that, it doesn't work either.
    This is the error I am getting when I run this on my Apex environment: (it, of course, will not run the web service in the apex.oracle.com environment)
    class="statusMessage">Bad Request</span>                                         
    </h3>                                         
    </div>                                         
    </div>                                         
    <div id="xWhiteContentContainer" class="xContentWide">                                         
    <div class="xWhiteContent">                                         
    <div class="errorPage">                                         
    <p>                                         
    <ul class="reasons"><li class="badRequestReason"><span class="target" style="display:none;">uri</span><span class="reason">Request path contains unbound parameters: deptno</span></li>                                    
    </ul>Thanks,
    Pat
    Edited by: patfmnd on May 8, 2013 3:33 AM

Maybe you are looking for

  • Weired issue odd IP's can ping the VIP and even can't on the Nexus 9K switch.

    Hello experts! we have two nexus 9k core, attached to the HP Blade v7000 chasis and VPC configured. All Vlans are HSRP are configured. VPC is configured successfully. But the weird this is that source IP address 10.1.2.3 can ping the dest VIP (on the

  • I need a phone number to talk to someone in costumer service

    I need a phone number to talk directly to costumer service

  • Moving music files from windows media player to itunes

    when I first got my ipod, only half of my music files moved from windows media player into itunes. Is there anyway I can import the rest of the music from windows media player into Itunes? I have tried using the import function and add file or folder

  • JDO O/R-Mapping

    Hi all, i am starting programming with JDO. First i start with the example Getting Started with JDO. After some trouble, it is running now. I want to expand the example, so i have three Objects/Tables. Employee, Manager, Department with the following

  • Data Conversion on Transports

    Hi all, I am new to Solution Manager.  And I would like to know if anyone has worked on data conversion on the transports that have been created in the satellite system before golive on Solution Manager Change Request Mangement functionality.  Please