Conexion con Web Service

Amigos de que manera puedo conectar oracle sql developer con un Web Service???

Que tal Alexandrinne,
Por lo que entiendo estas probando en dos equipos dentro de la misma rede. En el localhost podemos observar el VI de manera correcta pero en otros equipos no... Estoy en lo correcto???
En caso de que sí, puede ser que en el equipo externo no se tenga activado el Web Server. Te comparto un link donde se muestra cómo hacer esto, tanto para el localhost como para un remote target system, puede que ya hayas realizado este procedimiento, aunque sería bueno asegurarnos.
http://zone.ni.com/reference/en-XX/help/371361K-01/lvhowto/ws_enable_web_server/
Otra razon puede ser que no se hayan puesto los VIs de manera visible en las opciones de herramientas del VI. de igual manera te comparto un link donde se muestra este procedimiento. Lo puedes hacer desde cero o revisar solamente la configuración que tienes actualmente.
http://zone.ni.com/reference/en-XX/help/371361K-01/lvhowto/enabling_and_configuring_t/
Espero esta información nos ayude a resolver el problema, si no puedes comentarlo y buscaremos la solución.
Saludos!
Omar I.
Applications Engineer
National Instruments

Similar Messages

  • Who create Web service in flex 3? Or import  web service flex 3

    Please import web service flex 3, work code example
    (Alguine quien me colabore mostrando un ejemplo trabajando
    con web services en flex)

    do not use the forum as marketing place for you site. if you want to share the content with SDN users, you have the blog area, wiki, article area.
    raja

  • Pros & Cons for consuming web services in ABAP using ABAP PROXY

    Hi,
    Other then performence  is there any other disadvantages like security,etc for consuming web services in ABAP using ABAP proxy?
    I really appreciate if some one provide the more details(Pros & Cons ) regarding cosuming web services and I also want to know is there any other way to consume web services in ABAP.
    Thanks.

    <i> is there any other way to consume web services in ABAP</i>
    you can use cl_http_client class to make your program to act as http client and post the soap message too webservice. This way you dont need to generate proxy, but you should know the soap message format.
    Regards
    Raja

  • Help calling a web service from pl/sql

    Hi, i have a web service that is called from a php, i needed to do this but from pl sql:
    this is the call of web service from php:
    <?PHP
    //Variables de prueba - Se tienen que tomar los valores de la base de datos, de la compra y el usuario
    $p_id_emec=urlencode("33355555"); //Identificador del sitio dentro de Pago Fácil
    $p_id_operacion=urlencode("151"); //Identificador unívoco de la compra en el sitio
    $p_id_mone_ecom=urlencode("01"); //Identificador de moneda - '01'=pesos - '02=dolares
    //Inicializa Variables de URL
    $serviceName="Pago XX";
    $protocol="http://";
    // DESARROLLO
    $ipUrl="desa.e-pagoxx.com";
    $port=80;
    //Llamada
    $call="/2130/index.php";
    //Abro la conexion al port
    $URLsola = $protocol.$ipUrl;
    //Concatenacion del string
    $txtURL = $protocol.$ipUrl.$call;
    $txtURL .="?p_id_emec=".$p_id_emec;
    $txtURL .="&p_id_operacion=".$p_id_operacion;
    $txtURL .="&p_id_mone_ecom=".$p_id_mone_ecom;
    $txtURL = $txtURL;
    //* Se comunica con el servidor, pasa los datos y recibe el HTML con el comprobante *//
    $fp = fsockopen($ipUrl, $port, &$errno, &$errstr, 30);
    if(!$fp)
    echo "No me puedo comunicar con $serviceName";
    exit;
    else
    $file=@fopen($URLsola,"r");
    $pageData=file($txtURL);
    for($i=0;$i<count($pageData);$i++)
              $sText.=$pageData[$i];
    @fclose($file);
    @fclose($fp);
    echo($sText);
    ?>
    I need to call this webservice from pl sql
    any ideas?
    thanks!!

    Madhu BR wrote:
    You might want to try the webservice call using utl_http specified here : http://orclpps.blogspot.com/2007/12/invoking-webservices-from-oracle-9i-or.html
    Or even to expand on that to deal with responses larger than 32K...
    -- skeleton code
      PROCEDURE p_soap_request(p_username IN VARCHAR2, p_password IN VARCHAR2, p_proxy IN VARCHAR2) IS
        soap_request  VARCHAR2(30000);
        soap_respond  CLOB;
        http_req      utl_http.req;
        http_resp     utl_http.resp;
        resp          XMLType;
        soap_err      exception;
        v_code        VARCHAR2(200);
        v_msg         VARCHAR2(1800);
        v_len number;
        v_txt Varchar2(32767);
      BEGIN
        IF p_proxy IS NOT NULL THEN
          UTL_HTTP.SET_PROXY(p_proxy);
        END IF;
        -- Define the SOAP request according the the definition of the web service being called
        soap_request:= '<?xml version = "1.0" encoding = "UTF-8"?>'||
                       '<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">'||
                       '  <SOAP-ENV:Body>'||
                       '    <m:DownloadRequest xmlns:m="http://www.website.net/messages/GetDetails">'||
                       '      <m:UserName>'||p_username||'</m:UserName>'||
                       '      <m:Password>'||p_password||'</m:Password>'||
                       '    </m:DownloadRequest>'||
                       '  </SOAP-ENV:Body>'||
                       '</SOAP-ENV:Envelope>';
        http_req:= utl_http.begin_request
                  ( 'http://www.website.net/webservices/GetDetailsService.asmx'
                  , 'POST'
                  , 'HTTP/1.1'
        utl_http.set_header(http_req, 'Content-Type', 'text/xml');
        utl_http.set_header(http_req, 'Content-Length', length(soap_request));
        utl_http.set_header(http_req, 'Download', ''); -- header requirements of particular web service
        utl_http.write_text(http_req, soap_request);
        http_resp:= utl_http.get_response(http_req);
        utl_http.get_header_by_name(http_resp, 'Content-Length', v_len, 1); -- Obtain the length of the response
        FOR i in 1..CEIL(v_len/32767) -- obtain response in 32K blocks just in case it is greater than 32K
        LOOP
            utl_http.read_text(http_resp, v_txt, case when i < CEIL(v_len/32767) then 32767 else mod(v_len,32767) end);
            soap_respond := soap_respond || v_txt; -- build up CLOB
        END LOOP;
        utl_http.end_response(http_resp);
        resp:= XMLType.createXML(soap_respond); -- Convert CLOB to XMLTYPE
      END;

  • Getting error while deploying a simple web services

    Hi
    i am new to web services when i am deploying the web service using
    deployment descriptor(WSDD) file using admin client i am getting the follwing error can any body help regarding this.
    Mydeployment descriptor is
    deploy.wsdd
    <deployment xmlns="http://xml.apache.org/axis/wsdd/"
    xmlns:java="http://xml.apache.org/axis/wsdd/providers/java">
    <service name="MyService" provider="java:RPC">
    <parameter name="className" value="samples.userguide.example3.MyService"/>
    <parameter name="allowedMethods" value="*"/>
    </service>
    </deployment>
    I am getting exception as
    C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\axis\WEB-INF\clas
    ses>java org.apache.axis.client.AdminClient deploy.wsdd
    Feb 5, 2008 2:34:54 PM org.apache.axis.utils.JavaUtils isAttachmentSupported
    WARNING: Unable to find required classes (javax.activation.DataHandler and javax
    .mail.internet.MimeMultipart). Attachment support is disabled.
    Processing file deploy.wsdd
    Exception: AxisFault
    faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
    faultSubcode:
    faultString: java.net.ConnectException: Connection refused: connect
    faultActor:
    faultNode:
    faultDetail:
    {http://xml.apache.org/axis/}stackTrace:java.net.ConnectException: Conne
    ction refused: connect
    at java.net.PlainSocketImpl.socketConnect(Native Method)
    at java.net.PlainSocketImpl.doConnect(PlainSocketImpl.java:333)
    at java.net.PlainSocketImpl.connectToAddress(PlainSocketImpl.java:195)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:182)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:364)
    at java.net.Socket.connect(Socket.java:507)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:585)
    at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSoc
    ketFactory.java:153)
    at org.apache.axis.components.net.DefaultSocketFactory.create(DefaultSoc
    ketFactory.java:120)
    at org.apache.axis.transport.http.HTTPSender.getSocket(HTTPSender.java:1
    91)
    at org.apache.axis.transport.http.HTTPSender.writeToSocket(HTTPSender.ja
    va:404)
    at org.apache.axis.transport.http.HTTPSender.invoke(HTTPSender.java:138)
    at org.apache.axis.strategies.InvocationStrategy.visit(InvocationStrateg
    y.java:32)
    at org.apache.axis.SimpleChain.doVisiting(SimpleChain.java:118)
    at org.apache.axis.SimpleChain.invoke(SimpleChain.java:83)
    at org.apache.axis.client.AxisClient.invoke(AxisClient.java:165)
    at org.apache.axis.client.Call.invokeEngine(Call.java:2784)
    at org.apache.axis.client.Call.invoke(Call.java:2767)
    at org.apache.axis.client.Call.invoke(Call.java:1792)
    at org.apache.axis.client.AdminClient.process(AdminClient.java:439)
    at org.apache.axis.client.AdminClient.process(AdminClient.java:404)
    at org.apache.axis.client.AdminClient.process(AdminClient.java:410)
    at org.apache.axis.client.AdminClient.process(AdminClient.java:320)
    at org.apache.axis.client.AdminClient.main(AdminClient.java:463)
    {http://xml.apache.org/axis/}hostname:MUM-12016RS

    Hi Jhansi,
    Whether u create HRconnDS in ur Weblogic server
    If not create it ...
    If yes just check it out whether u gave a correct connection string for it......
    Regards,
    Suganth.G

  • Error while invoking secure web service.

    Hi,
    I am trying to access a secure web service through a simple BPEL process in SOA Suite 11g. When I test it through enterprise manager I am getting the following error. Since it's a secured websecure i set the WS policy(oracle/wss_username_token_client_policy) in the external reference and also provided the credentials. If anyone has come across similar error or know the solution please let me know. Also I am not sure if its related to security or is it with the way I am trying to call the service.
    Error Message:
    Fault ID     reference:80014
    Fault Time     May 22, 2011 12:54:45 PM
    Non Recoverable System Fault :
    javax.xml.ws.soap.SOAPFaultException: 99999: Unknown Service
    Error Message: {http://schemas.oracle.com/bpel/extension}remoteFault
    Fault ID     default/Mocking!1.0*soa_be35cb3e-5f05-49df-a696-a653d5703681/BPELProcess1/30017-BpInv0-BpSeq0.3-3
    Fault Time     May 22, 2011 12:54:46 PM
    Non Recoverable System Fault :
    <bpelFault><faultType>0</faultType><remoteFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>99999: Unknown Service</summary></part><part name="detail"><detail>&lt;con:fault xmlns:con="http://www.bea.com/wli/sb/context"> &lt;con:errorCode>99999&lt;/con:errorCode> &lt;con:reason>Unknown Service&lt;/con:reason> &lt;con:location> &lt;con:node>PipelinePairNode1&lt;/con:node> &lt;con:pipeline>PipelinePairNode1_request&lt;/con:pipeline> &lt;con:stage>stage1&lt;/con:stage> &lt;/con:location> &lt;/con:fault> </detail></part><part name="code"><code>soap:Server</code></part></remoteFault></bpelFault>

    Thanks very much for your suggestion. I will take a look into the wsdl again and see if something is wrong in that.
    I have a peculiar problem with the wsdl. When I created the partner link using the remote wsdl it would throw a compilation error. But when I took a local copy of the remote wsdl and seperated all the schema's from the wsdl and imported them inside wsdl it gets compiled. But I am not sure if this is a appropriate thing to do and if that is creating this problem. Any thoughts on this would be really helpful.

  • A web service that never replies...

    Hi!
    I write a java web service client that sends a soap message to a JAXMServlet that never replies.
    This is the simple client that sends a soap message and waits for the response:
    import java.net.*;
    import java.util.*;
    import javax.xml.soap.*;
    public class MyWebServiceClient {
      public static void main(String[] args) {
        String url = "http://localhost:8080/ws/ws";
        try {
            SOAPConnectionFactory scFactory =  SOAPConnectionFactory.newInstance();
            SOAPConnection con = scFactory.createConnection();
            MessageFactory factory = MessageFactory.newInstance();
            SOAPMessage message = factory.createMessage();
            SOAPPart soapPart = message.getSOAPPart();
            SOAPEnvelope envelope = soapPart.getEnvelope();
            SOAPHeader header = envelope.getHeader();
            SOAPBody body = envelope.getBody();
            URL endpoint = new URL(url);
            SOAPMessage response = con.call(message, endpoint);
            con.close();
        } catch (SOAPException e) {
            e.printStackTrace();
        } catch (MalformedURLException e) {
            e.printStackTrace();
    }This is the server that never replies (running on Tomcat 4.1.18):
    import javax.xml.messaging.*;
    import javax.xml.soap.*;
    public class MyWebService extends JAXMServlet implements ReqRespListener {
      public SOAPMessage onMessage(SOAPMessage message) {
        while (true);
        return message;
    }The problem is that the client doesn't receive a response (or a SOAPException) even if I kill Tomcat (and the servlet too)!!!!
    Thank you
    Matteo

    The question is:
    Is it possible to unlock the call method? Is it possible to unlock the call method whith a time out?

  • Creating And Deploying A JWSDP Web Service Client to Weblogic 8.1

    This setup produces an EAR containing a message driven bean in a jar file. When the MDB receives a message
    it checks to see if there is any data in a database table and if so calls the web service with that data. These instructions
    are for MS-Windows environments.
    In my setup I have:
    the weblogic domain at c:\b2b80
    the jwsdp at c:\apps\jwsdp-1.3
    extra jar files for the app server in c:\b2b80\lib
    the main weblogic installation at c:\apps\weblogic810\
    1> Download the the JWSDP version you wish to use and install it. (In this example I'm using 1.3)
    2> Create a project structure for you client like this:
         /project
              /earbuild
                   /META-INF
              /ejbbuild
                   /META-INF
              /ejbsource
              /wssource
    3> in the /project directory you will need a build.xml file that looks something like this: (the ant build targets are described at the end of this document)
    ==============================================================
    <?xml version="1.0"?>
    <project name="svcowner" default="buildall" basedir=".">
         <property file="classpath.settings"/>
         <property name="wssource" value="wssource"/>
         <property name="ejbsource" value="ejbsource"/>
         <property name="compileejbdest" value="ejbbuild"/>
         <property name="earbuilddest" value="earbuild"/>
         <property name="jarfilename" value="svcownerejb.jar"/>
         <property name="earfilename" value="svcowner.ear"/>
         <property name="debug" value="true"/>
         <property name="deprecation" value="true"/>
         <!-- this runs the create.bat which has all of the wscompile parameters -->
         <target name="cmdline_wscompile">
              <exec executable="wssource/create.bat"/>
         </target>
         <target name="compileejb" depends="cmdline_wscompile">
              <javac debug="${debug}" srcdir="${wssource}" classpath="${BUILD_CLASSPATH}"
                   destdir="${compileejbdest}" includes="**/*.java" deprecation="${deprecation}"/>
              <javac debug="${debug}" srcdir="${ejbsource}" classpath="${BUILD_CLASSPATH}"
                   destdir="${compileejbdest}" includes="**/*.java" deprecation="${deprecation}"/>
         </target>
         <target name="buildejbjar" depends="compileejb">
              <jar jarfile="${earbuilddest}/${jarfilename}" manifest="${compileejbdest}/META-INF/MANIFEST.txt">
                   <fileset dir="${compileejbdest}">
                        <include name="**/*.*"/>
                   </fileset>
              </jar>
         </target>
         <target name="buildear" depends="buildejbjar">
              <jar jarfile="${earfilename}">
                   <fileset dir="${earbuilddest}">
                        <include name="**/*.*"/>
                   </fileset>
              </jar>
         </target>
         <target name="deploy">
              <copy file="${earfilename}" todir="../../config/domain/applications"/>
         </target>
         <target name="buildall" description="build everything" depends="buildear, deploy">
         </target>
    </project>
    ==============================================================
    4> You need a matching classpath.settings file in the same directory, something like this:
    ==============================================================
    BUILD_CLASSPATH=/b2b80/lib/saaj-impl.jar;/b2b80/lib/saaj-api.jar;/b2b80/lib/jaxrpc-api.jar;/b2b80/lib/jaxrpc-impl.jar;c:/b2b80/lib/jaxrpc-spi.jar/b2b80/classes/;/b2b80/classes;/apps/weblogic810/server/lib/weblogic.jar;/apps/weblogic810/server/lib/weblogic_sp.jar;/apps/weblogic810/server/lib/xmlx.jar;/apps/weblogic810/server/ext/weblogic-tags.jar;/apps/weblogic810/server/ext/jdbc/oracle/920/ojdbc14_g.jar;/b2b80/lib/log4j.jar
    ==============================================================
    5> In the /project/earbuild/META-INF directory you need an application.xml file:
    ==============================================================
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <!DOCTYPE application PUBLIC '-//Sun Microsystems, Inc.//DTD J2EE Application 1.2//EN' 'http://java.sun.com/j2ee/dtds/application_1_2.dtd'>
    <application>
    <display-name>svcownerb2b</display-name>
    <description>Application description</description>
    <module>
    <ejb>svcownerejb.jar</ejb>
    </module>
    </application>
    ==============================================================
    6> The /project/ejbsource directory contains the source for the client application. In my case this is a message driven bean (note that code below isn't complete). The most important part of the code below is the setting of the javax.xml.soap.MessageFactory system property.
    System.getProperties().put("javax.xml.soap.MessageFactory","com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl");
    If you don't do this a weblogic class will be used and the code will fail.
    ==============================================================
    package com.svcclient.ejb.svcownershipment;
    import java.text.*;
    import java.io.*;
    import java.sql.*;
    import java.util.Properties;
    import javax.ejb.*;
    import javax.jms.*;
    import javax.naming.*;
    import javax.sql.DataSource;
    import com.svcclient.util.*;
    import org.w3c.dom.*;
    import com.svcclient.websvc.svcowner.*;
    import javax.xml.rpc.Stub;
    public class SvcOwnerShipmentSubscriberMDB implements MessageDrivenBean, MessageListener
    private transient MessageDrivenContext mdc = null;
    private static Context context;
    private final static String CLASSNAME = "SvcOwnerShipmentSubscriberMDB";
    private String DATASOURCE_JNDI = "svcclient.b2b";
    private static DataSource mDS = null;
    private SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
    public SvcOwnerShipmentSubscriberMDB()
    System.getProperties().put("javax.xml.soap.MessageFactory","com.sun.xml.messaging.saaj.soap.ver1_1.SOAPMessageFactory1_1Impl");
    try
    if (context == null)
    context = new InitialContext() ;
    if (mDS == null)
    mDS = (DataSource)context.lookup(DATASOURCE_JNDI);
    catch (NamingException ex)
    ex.printStackTrace();
    catch(Exception ex)
    ex.printStackTrace();
    public void onMessage(javax.jms.Message message)
    TextMessage msg = null;
    String ordernumber = null;
    String lineid = null;
    try
    if (message instanceof TextMessage)
    msg = (TextMessage) message;
    ordernumber = msg.getStringProperty("ordernumber");
                   // the JMS message contains a property that is an order number
    createAndSendXML(ordernumber);
    catch (Throwable ex)
    ex.printStackTrace();
    private void createAndSendXML(String ordernumber)
    if(ordernumber==null)
    return;
    PreparedStatement statement = null;
    ResultSet rset = null;
    java.sql.Connection conn = null;
    try
    conn = DBHelper.getConnection(mDS,"SvcOwnerShipmentSubscriberMDB.createAndSendXML");
    statement = conn.prepareStatement("select * from ..."); // you SQL here
    statement.setString(1,ordernumber);
    rset = statement.executeQuery();
    StringBuffer data = new StringBuffer();
    data.append("<? version=\"1.0\"?>\n");
    data.append("<shippingRequest>\n");
    while(rset.next())
    data.append("\t<order_date>"+dateFormat.format(new java.util.Date(rset.getTimestamp("SCHEDULE_SHIP_DATE").getDate()))+"</order_date>\n");
    data.append("\t<brand_name>svcclient</brand_name>\n");
    data.append("\t<shipRequestType>Sale</shipRequestType>\n");
    data.append("</shippingRequest>\n");
              // call the web service with the data from the database
    DataExchanger_Impl impl = new DataExchanger_Impl();
    Stub stub = (Stub)(impl.getDataExchangerSoap());
    DataExchangerSoap dx = (DataExchangerSoap)stub;
    String resp = dx.exchangeData("svcclient", "mypassword", "Sales", data.toString());
    catch(SQLException sqle)
    sqle.printStackTrace();
    catch(Exception e)
    e.printStackTrace();
    finally
    try
    if (rset != null)
    rset.close();
    if (statement != null)
    statement.close();
    if (conn != null)
    conn.close();
    catch(Exception x){}
    public void ejbCreate() { System.out.println("In SvcOwnerShipmentSubscriberMDB.ejbCreate()"); }
    public void setMessageDrivenContext(MessageDrivenContext mdc) { this.mdc = mdc; }
    public void ejbRemove() throws javax.ejb.EJBException { System.out.println("In SvcOwnerShipmentSubscriberMDB.remove()"); }
    ==============================================================
    7> The /project/ejbbuild/META-INF directory needs a MANIFEST.txt file.
    Manifest-Version: 1.0
    8> The /project/ejbbuild/META-INF directory needs a ejb-jar.xml file. This just sets up the MDB which is the client.
    ==============================================================
    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE ejb-jar PUBLIC '-//Sun Microsystems, Inc.//DTD Enterprise JavaBeans 2.0//EN' 'http://java.sun.com/dtd/ejb-jar_2_0.dtd'>
    <ejb-jar>
    <display-name>SvcOwnerShipmentSubscriberMDB</display-name>
    <enterprise-beans>
    <message-driven>
    <display-name>SvcOwnerShipmentSubscriberMDB</display-name>
    <ejb-name>SvcOwnerShipmentSubscriberMDB</ejb-name>
    <ejb-class>com.svcclient.ejb.svcownershipment.SvcOwnerShipmentSubscriberMDB</ejb-class>
    <transaction-type>Container</transaction-type>
    <message-driven-destination>
    <destination-type>javax.jms.Topic</destination-type>
    <subscription-durability>NonDurable</subscription-durability>
    </message-driven-destination>
    </message-driven>
    </enterprise-beans>
    <assembly-descriptor>
    <container-transaction>
    <method>
    <ejb-name>SvcOwnerShipmentSubscriberMDB</ejb-name>
    <method-name>onMessage</method-name>
    <method-params>
    <method-param>javax.jms.Message</method-param>
    </method-params>
    </method>
    <trans-attribute>NotSupported</trans-attribute>
    </container-transaction>
    </assembly-descriptor>
    </ejb-jar>
    ==============================================================
    9> The /project/ejbbuild/META-INF directory needs a weblogic-ejb-jar.xml file.
    ==============================================================
    <?xml version="1.0"?>
    <!DOCTYPE weblogic-ejb-jar PUBLIC "-//BEA Systems, Inc.//DTD WebLogic 6.0.0 EJB//EN" "http://www.bea.com/servers/wls600/dtd/weblogic-ejb-jar.dtd">
    <weblogic-ejb-jar>
    <weblogic-enterprise-bean>
    <ejb-name>SvcOwnerShipmentSubscriberMDB</ejb-name>
    <message-driven-descriptor>
    <pool>
    <max-beans-in-free-pool>5</max-beans-in-free-pool>
    <initial-beans-in-free-pool>1</initial-beans-in-free-pool>
    </pool>
    <!-- JNDI Name of the Topic that the SvcOwnerShipmentSubscriberMDB listens for messages on -->
    <destination-jndi-name>jms.svcownerShipmentsTopic</destination-jndi-name>
    </message-driven-descriptor>
    </weblogic-enterprise-bean>
    </weblogic-ejb-jar>
    ==============================================================
    10> The /project/wssource directory needs a dataexchange.wsdl file. This is the WSDL describing the web service
    we want to connect to with our client.
    ==============================================================
    <?xml version="1.0" encoding="utf-8"?>
    <wsdl:definitions
    xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
    xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/"
    xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
    xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/"
    xmlns:tns="https://www.svcowner.com/mfg/DataExchange/"
    xmlns:s="http://www.w3.org/2001/XMLSchema"
    xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/"
    xmlns:http="http://schemas.xmlsoap.org/wsdl/http/"
    targetNamespace="https://www.svcowner.com/mfg/DataExchange/"
    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
    name="">
    <wsdl:types>
    <s:schema elementFormDefault="qualified"
    targetNamespace="https://www.svcowner.com/mfg/DataExchange/">
    <s:element name="exchangeData">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="sender" type="s:string" />
    <s:element minOccurs="0" maxOccurs="1" name="password" type="s:string" />
    <s:element minOccurs="0" maxOccurs="1" name="transactionType" type="s:string" />
    <s:element minOccurs="0" maxOccurs="1" name="data" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    <s:element name="exchangeDataResponse">
    <s:complexType>
    <s:sequence>
    <s:element minOccurs="0" maxOccurs="1" name="exchangeDataResult" type="s:string" />
    </s:sequence>
    </s:complexType>
    </s:element>
    </s:schema>
    </wsdl:types>
    <wsdl:message name="exchangeDataSoapIn">
    <wsdl:part name="parameters" element="tns:exchangeData" />
    </wsdl:message>
    <wsdl:message name="exchangeDataSoapOut">
    <wsdl:part name="parameters" element="tns:exchangeDataResponse" />
    </wsdl:message>
    <wsdl:portType name="DataExchangerSoap">
    <wsdl:operation name="exchangeData">
    <wsdl:input message="tns:exchangeDataSoapIn" />
    <wsdl:output message="tns:exchangeDataSoapOut" />
    </wsdl:operation>
    </wsdl:portType>
    <wsdl:binding name="DataExchangerSoap" type="tns:DataExchangerSoap">
    <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
    <wsdl:operation name="exchangeData">
    <soap:operation soapAction="https://www.svcowner.com/mfg/DataExchange/exchangeData"
    style="document" />
    <wsdl:input>
    <soap:body use="literal" />
    </wsdl:input>
    <wsdl:output>
    <soap:body use="literal" />
    </wsdl:output>
    </wsdl:operation>
    </wsdl:binding>
    <wsdl:service name="DataExchanger">
    <wsdl:port name="DataExchangerSoap" binding="tns:DataExchangerSoap">
    <soap:address location="https://svc.svcowner.com/mfg/dataexchange.php" />
    </wsdl:port>
    </wsdl:service>
    </wsdl:definitions>
    ==============================================================
    10> The /project/wssource directory needs a websvc_config.xml file. This file tells wscompile where
    to find the WSDL file and the package name for the generated classes.
    ==============================================================
    <?xml version="1.0" encoding="UTF-8"?>
    <configuration xmlns="http://java.sun.com/xml/ns/jax-rpc/ri/config">
         <wsdl location="wssource/dataexchange.wsdl" packageName="com.svcclient.websvc.svcowner"/>
    </configuration>
    ==============================================================
    11> The /project/wssource directory needs a create.bat file. This just sets up the environment
    and calls the wscompile batch file in the JWSDP. I had to tweak the wscompile.bat file to match
    my environment as well.
    ==============================================================
    SETLOCAL
    SET WSDP=C:\apps\jwsdp-1.3\
    SET ANT_HOME=%WSDP%;apache-ant
    SET PATH=%ANT_HOME%\bin;%WSDP%jaxrpc\bin;%PATH%
    SET JAVA_HOME=c:\apps\weblogic810\jrockit81sp2_141_05
    call wscompile -gen:client -s ./wssource -keep -g -d ejbbuild wssource/websvc_config.xml
    ==============================================================
    12> The /project directory needs a build.bat file. Just a way for me to make sure my
    environment is set up right before doing the build.
    ==============================================================
    SETLOCAL
    SET ANT_HOME=c:\apps\jakarta-ant-1.4.1
    SET PATH=%ANT_HOME%\bin;%PATH%
    SET JAVA_HOME=c:\apps\weblogic810\jrockit81sp2_141_05
    call ant -buildfile build.xml %1 %2 %3 %4 %5 %6 %7 %8 %9
    ==============================================================
    13> You need to copy the following jar files from the JWSDP into a location they can be used by the
    app server during run time and also for the build process. In my set up this is c:\b2b80\lib. Note that
    these are pointed to by the file in step 4.
    c:\apps\jwsdp-1.3\jaxrpc\lib\jaxrpc-api.jar
    c:\apps\jwsdp-1.3\jaxrpc\lib\jaxrpc-impl.jar
    c:\apps\jwsdp-1.3\jaxrpc\lib\jaxrpc-spi.jar
    c:\apps\jwsdp-1.3\saaj\lib\saaj-api.jar
    c:\apps\jwsdp-1.3\saaj\lib\saaj-impl.jar
    14> You must make sure that the jar file in step 13 are at the front of the classpath for the
    weblogic server. WL comes with classes that conflict with these jars.
    15> I also had to add the root ssl certificate from the partners certificate authority to the java keystore
    using the keytool because this service uses SSL:
    C:\apps\weblogic810\jrockit81sp2_141_05\jre\bin>keytool -import -keystore ..\lib\security\cacerts -alias svcownerroot -keypass password -file c:\temp\svcownerroot.cer
    ==============================================================
    So the idea is this, you run the /project/build.bat file from within the /project directory. This
    calls ant which uses the build.xml file to create everything and copy the EAR to the weblogic deployment
    directory. The default ant target is buildall.
    The cmdline_wscompile target runs the /project/wssource/create.bat file which in turn runs the wscompile.bat
    file from the jwsdp. This causes the dataexchange.wsdl file to processed and the client files to be generated.
    The generated java files go into the /project/wssource directory. The generated class files go into the
    /project/ejbbuild directory. They need to be there so the MDB can use them.
    Next the compileejb ant target compiles the MDB java file and places the resulting class file into the
    /project/ejbbuild directory.
    Next the buildejbjar ant target takes everything in the /project/ejbbuild directory and creates the ejb jar
    file that will be included in the EAR. This file is placed in the /project/earbuild directory.
    Finally the buildear ant target takes everything in the /project/ejbbuild directory and produces the EAR
    file for deployment. The EAR file is placed in the /project directory.
    The deploy task simply copies the EAR file into the weblogic domain applications directory.

    It's really the web service that determines what kind of authentication is required. You can't just use any old strategy. If the web service isn't expecting it in that form, it won't work. Typically, either HTTP BASIC Auth or WS-Security is used. You'd have to contact the people responsible for the web service to know what kind of auth it requires.

  • Calling web service from SQL 2008 error: System.Security.HostProtectionException: Attempted to perform an operation that was forbidden by the CLR host.

    Hi, 
    Im trying to use web service in c# sql database project. when running stored procedure, in which the web service should be called, im getting this error:
    System.TypeInitializationException: The type initializer for 'System.ServiceModel.ClientBase`1' threw an exception. ---> System.Security.HostProtectionException: Attempted to perform an operation that was forbidden by the CLR host.
    at System.ServiceModel.DiagnosticUtility.GetUtility()
    at System.ServiceModel.DiagnosticUtility.get_Utility()
    at System.ServiceModel.ClientBase`1..cctor()
    The protected resources (only available with full trust) were:
    All
    The demanded resources were:
    Synchronization, ExternalThreading
    --- End of inner exception stack trace ---
    at System.ServiceModel.ClientBase`1.InitializeChannelFactoryRef()
    at System.ServiceModel.ClientBase`1..ctor()
    at UMGClient..ctor()
    at UMG_StoredProcedures.spUMG_ProcessEmail(SqlInt64 cid_request)
    Here is the code:
    using System;
    using System.Data;
    using System.Data.SqlClient;
    using System.Data.SqlTypes;
    using Microsoft.SqlServer.Server;
    using CredexDB.Workflow;
    using System.Collections.Generic;
    using CredexDB.umgwcftest;
    public partial class UMG_StoredProcedures
    /// <summary>
    /// </summary>
    /// <param name="bankDate"></param>
    /// <param name="stateCategory"></param>
    [Microsoft.SqlServer.Server.SqlProcedure]
    public static void spUMG_ProcessEmail( SqlInt64 cid_request )
    SqlConnection conn = new SqlConnection("Context Connection=true;");
    conn.Open();
    try
    SqlContext.Pipe.Send("A");
    UMGClient umgcl = new UMGClient();
    SqlContext.Pipe.Send("B");
    UMGwcf.SoapExchangeMailMessage email = new UMGwcf.SoapExchangeMailMessage();
    string[] names = new string[1];
    names[0] = "[email protected]";
    email.To = names;
    email.Subject = "Test UmgWcf";
    email.MessageBody = "Testovacia správa - ľľššččťťťýéáí";
    email.From = "[email protected]";
    email.Priority = 20;
    email.Sender = 1;
    email.DoNotArchive = false;
    email.EncryptAndSign = false;
    //long ret = umgcl.SendMailMessage(email);
    catch (Exception e)
    SqlContext.Pipe.Send("C");
    SqlContext.Pipe.Send(e.ToString());
    finally
    SqlContext.Pipe.Send("D");
    conn.Close();
    private static void execSql(string sql, SqlConnection conn)
    new SqlCommand(sql, conn).ExecuteNonQuery();
    The error occurs at this row:
    UMGClient umgcl = new UMGClient();
    Here is the UMG class:
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    [System.ServiceModel.ServiceContractAttribute(Namespace="vub.sk/UMGwcf", ConfigurationName="IUMG")]
    public interface IUMG
    [System.ServiceModel.OperationContractAttribute(Action="vub.sk/UMGwcf/IUMG/SendMailMessage", ReplyAction="vub.sk/UMGwcf/IUMG/SendMailMessageResponse")]
    long SendMailMessage(UMGwcf.SoapExchangeMailMessage message);
    [System.ServiceModel.OperationContractAttribute(Action="vub.sk/UMGwcf/IUMG/ResendEmailMessage", ReplyAction="vub.sk/UMGwcf/IUMG/ResendEmailMessageResponse")]
    long ResendEmailMessage(long emailid);
    [System.ServiceModel.OperationContractAttribute(Action="vub.sk/UMGwcf/IUMG/GetEmailById", ReplyAction="vub.sk/UMGwcf/IUMG/GetEmailByIdResponse")]
    UMGwcf.SoapDeliveredMailMessage GetEmailById(long emailid);
    [System.ServiceModel.OperationContractAttribute(Action="vub.sk/UMGwcf/IUMG/SendSMSMessage", ReplyAction="vub.sk/UMGwcf/IUMG/SendSMSMessageResponse")]
    long SendSMSMessage(UMGwcf.SoapSMSMessage smsmessage);
    [System.ServiceModel.OperationContractAttribute(Action="vub.sk/UMGwcf/IUMG/GetSMSById", ReplyAction="vub.sk/UMGwcf/IUMG/GetSMSByIdResponse")]
    UMGwcf.SoapDeliveredSMSMessage GetSMSById(long smsid);
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    public interface IUMGChannel : IUMG, System.ServiceModel.IClientChannel
    [System.Diagnostics.DebuggerStepThroughAttribute()]
    [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")]
    public partial class UMGClient : System.ServiceModel.ClientBase<IUMG>, IUMG
    public UMGClient()
    public UMGClient(string endpointConfigurationName) :
    base(endpointConfigurationName)
    public UMGClient(string endpointConfigurationName, string remoteAddress) :
    base(endpointConfigurationName, remoteAddress)
    public UMGClient(string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) :
    base(endpointConfigurationName, remoteAddress)
    public UMGClient(System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) :
    base(binding, remoteAddress)
    public long SendMailMessage(UMGwcf.SoapExchangeMailMessage message)
    return base.Channel.SendMailMessage(message);
    public long ResendEmailMessage(long emailid)
    return base.Channel.ResendEmailMessage(emailid);
    public UMGwcf.SoapDeliveredMailMessage GetEmailById(long emailid)
    return base.Channel.GetEmailById(emailid);
    public long SendSMSMessage(UMGwcf.SoapSMSMessage smsmessage)
    return base.Channel.SendSMSMessage(smsmessage);
    public UMGwcf.SoapDeliveredSMSMessage GetSMSById(long smsid)
    return base.Channel.GetSMSById(smsid);
    the CLR where created as follows:
    ALTER DATABASE XXXX SET TRUSTWORTHY ON;
    CREATE ASSEMBLY [System.ServiceModel]
    FROM 'C:\ttrojcak\System.Runtime.Serialization.dll'
    WITH PERMISSION_SET = UNSAFE
    CREATE ASSEMBLY [System.ServiceModel]
    FROM 'C:\ttrojcak\System.ServiceModel.dll'
    WITH PERMISSION_SET = UNSAFE
    the message window shows warnings:
    Warning: The Microsoft .NET Framework assembly 'system.servicemodel, version=3.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.web, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=x86.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.drawing, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.directoryservices, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.directoryservices.protocols, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.enterpriseservices, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=x86.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.runtime.remoting, version=2.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.runtime.serialization.formatters.soap, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.design, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.windows.forms, version=2.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'accessibility, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.drawing.design, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.web.regularexpressions, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.serviceprocess, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.configuration.install, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.identitymodel, version=3.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.messaging, version=2.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'system.identitymodel.selectors, version=3.0.0.0, culture=neutral, publickeytoken=b77a5c561934e089, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    Warning: The Microsoft .NET Framework assembly 'microsoft.transactions.bridge, version=3.0.0.0, culture=neutral, publickeytoken=b03f5f7f11d50a3a, processorarchitecture=msil.' you are registering is not fully tested in the SQL Server hosted environment and is not supported. In the future, if you upgrade or service this assembly or the .NET Framework, your CLR integration routine may stop working. Please refer SQL Server Books Online for more details.
    creating store procedure:
    EXEC sp_executesql N'
    CREATE PROCEDURE [spUMG_ProcessEmail]
    @cid_request bigint
    AS
    EXTERNAL NAME [CredexDB].[UMG_StoredProcedures].[spUMG_ProcessEmail]'
    IF (@@ERROR = 0)
    BEGIN
    DECLARE @procSchema sysname
    DECLARE @procName sysname
    SELECT @procSchema = SCHEMA_NAME(schema_id), @procName = name
    FROM sys.objects
    WHERE object_id = OBJECT_ID(N'[spUMG_ProcessEmail]')
    EXEC sp_addextendedproperty 'AutoDeployed', N'yes',
    'SCHEMA', @procSchema,
    'PROCEDURE', @procName
    EXEC sp_addextendedproperty 'SqlAssemblyFile', N'UMG\UMG.cs',
    'SCHEMA', @procSchema,
    'PROCEDURE', @procName
    EXEC sp_addextendedproperty 'SqlAssemblyFileLine', 95,
    'SCHEMA', @procSchema,
    'PROCEDURE', @procName
    END
    Any tips? 
    Thank you

    and this moves me to another problem. the stored procedure spUMG_ProcessEmail is unable to find and read app.config
    stored procedure is unable to read app.config. it is necesary to rewrite the xml config into c# code:
    <?xml version="1.0" encoding="utf-8"?>
    <configuration>
    <system.serviceModel>
    <bindings>
    <basicHttpBinding>
    <binding name="BasicHttpBinding_IUMG" closeTimeout="00:01:00"
    openTimeout="00:01:00" receiveTimeout="00:10:00" sendTimeout="00:01:00"
    allowCookies="false" bypassProxyOnLocal="false" hostNameComparisonMode="StrongWildcard"
    maxBufferSize="65536" maxBufferPoolSize="524288" maxReceivedMessageSize="65536"
    messageEncoding="Text" textEncoding="utf-8" transferMode="Buffered"
    useDefaultWebProxy="true">
    <readerQuotas maxDepth="32" maxStringContentLength="8192" maxArrayLength="16384"
    maxBytesPerRead="4096" maxNameTableCharCount="16384" />
    <security mode="None">
    <transport clientCredentialType="None" proxyCredentialType="None"
    realm="" />
    <message clientCredentialType="UserName" algorithmSuite="Default" />
    </security>
    </binding>
    </basicHttpBinding>
    </bindings>
    <client>
    <endpoint address="http://umgwcftest/UMGwcf.svc" binding="basicHttpBinding"
    bindingConfiguration="BasicHttpBinding_IUMG" contract="IUMG"
    name="BasicHttpBinding_IUMG" />
    </client>
    </system.serviceModel>
    </configuration>
    and the rewrited code:
    BasicHttpBinding myBinding = new BasicHttpBinding();
    myBinding.Name = "BasicHttpBinding_IUMG";
    myBinding.CloseTimeout = new TimeSpan(00, 01, 00);
    myBinding.OpenTimeout = new TimeSpan(00, 01, 00);
    myBinding.ReceiveTimeout = new TimeSpan(00, 10, 00);
    myBinding.CloseTimeout = new TimeSpan(00, 01, 00);
    myBinding.AllowCookies = false;
    myBinding.BypassProxyOnLocal = false;
    myBinding.HostNameComparisonMode = HostNameComparisonMode.StrongWildcard;
    myBinding.MaxBufferSize = 65536;
    myBinding.MaxBufferPoolSize = 524288;
    myBinding.MaxReceivedMessageSize = 65536;
    myBinding.MessageEncoding = WSMessageEncoding.Text;
    myBinding.TextEncoding = System.Text.Encoding.UTF8;
    myBinding.TransferMode = TransferMode.Buffered;
    myBinding.UseDefaultWebProxy = true;
    myBinding.ReaderQuotas.MaxDepth = 32;
    myBinding.ReaderQuotas.MaxStringContentLength = 8192;
    myBinding.ReaderQuotas.MaxArrayLength = 16384;
    myBinding.ReaderQuotas.MaxBytesPerRead = 4096;
    myBinding.ReaderQuotas.MaxNameTableCharCount = 16384;
    myBinding.Security.Mode = BasicHttpSecurityMode.None;
    myBinding.Security.Transport.ClientCredentialType = HttpClientCredentialType.None;
    myBinding.Security.Transport.ProxyCredentialType = HttpProxyCredentialType.None;
    myBinding.Security.Transport.Realm = "";
    myBinding.Security.Message.ClientCredentialType = BasicHttpMessageCredentialType.UserName;
    myBinding.Security.Message.AlgorithmSuite = System.ServiceModel.Security.SecurityAlgorithmSuite.Default;
    EndpointAddress endPointAddress = new EndpointAddress(new Uri("http://umgwcftest/UMGwcf.svc"));
    SqlContext.Pipe.Send("2");
    UMGClient umgcl = new UMGClient(myBinding, endPointAddress);
    after that, I got another error and it's solution is here:
    error and solution
    So I got it finaly working 

  • Calling Oracle BPM Process Web Service from Oracle Service Bus

    Hi
    I am using Oracle Service Bus 10gR3.
    I have developed simple BPM process through Oracle BPM studio 10.3.1.0.I then followed steps below
    1. Create a Process.
    2. Expose the Process as a Web Service.
    3. Run the project. This starts the Process Execution Engine.
    4. Create an ALSB External Resource of type Management Host.
    5. Create a second ALSB External Resource for registration.
    6. Register the End Point
    Until this point everything is fine. Then I created one project through Oracle Service Bus console. Under that created WSDL, Proxy Service and Business Service Folders. I am using the web service created through BPM studio as teh Business Service in SB . I then created one proxy service to route the request to the Business Service.
    Finally when I try to test the Proxy Service by launching test console, I get the
    <con:fault xmlns:con="http://www.bea.com/wli/sb/context">
    <con:errorCode>BEA-380001</con:errorCode>
    <con:reason>INTERNAL SERVER ERROR</con:reason>
    <con:location>
    <con:node>RouteNode1</con:node>
    <con:path>response-pipeline</con:path>
    </con:location>
    </con:fault>
    I also tried to debug through "Oracle Workshop for WebLogic Version 10.3 " . But I am not getting enough details as to why this is failing.
    Please help me . Thanks In advance.
    Thanks
    Nilay
    Edited by: user8950019 on Feb 1, 2010 4:11 AM

    Hi,
    When im calling wsdl created when BPM exposed as webservice in SOAP-ui, i first hit the startSession
    Request is:-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exp="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
    <soapenv:Header/>
    <soapenv:Body>
    <exp:startSession>
    <password>Employee</password>
    <user>Employee</user>
    </exp:startSession>
    </soapenv:Body>
    </soapenv:Envelope>
    Response i Get is:-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <ns1:startSessionResponse xmlns:ns1="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
    <return>3782hecq1s85h</return>
    </ns1:startSessionResponse>
    </soapenv:Body>
    </soapenv:Envelope
    but when i put this sessionId in main request:-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exp="http://bea.com/albpm/ExpenseManagement/ExpenseReport">
    <soapenv:Header/>
    <soapenv:Body>
    <exp:expenseReport>
    <sessionId>3782hecq1s85h</sessionId>
    <reportArg>
    <!--Optional:-->
    <comments>yes</comments>
    <!--Optional:-->
    <costCenter>jaa</costCenter>
    <!--Optional:-->
    <description>aa</description>
    <!--Optional:-->
    <isApproved>y</isApproved>
    <!--Zero or more repetitions:-->
    <items>
    <!--Optional:-->
    <elements>
    <!--Optional:-->
    <amount>700</amount>
    <!--Optional:-->
    <date>?</date>
    <!--Optional:-->
    <description>?</description>
    <!--Optional:-->
    <receiptChecked>?</receiptChecked>
    </elements>
    </items>
    <!--Optional:-->
    <reviewedBy>?</reviewedBy>
    <!--Optional:-->
    <submitDate>?</submitDate>
    <!--Optional:-->
    <submittedBy>?</submittedBy>
    <!--Optional:-->
    <total>?</total>
    </reportArg>
    </exp:expenseReport>
    </soapenv:Body>
    </soapenv:Envelope>
    Response coming is :-
    <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <soapenv:Body>
    <soapenv:Fault>
    <faultcode>soapenv:Server.userException</faultcode>
    <faultstring>fuego.lang.ComponentExecutionException: The method 'expenseReport' from class 'xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl' could not be successfully executed.</faultstring>
    <detail>
    <ns1:stackTrace xmlns:ns1="http://xml.apache.org/axis/">fuego.lang.ComponentExecutionException: The method 'expenseReport' from class 'xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl' could not be successfully executed.
         at fuego.lang.Invokeable.invokeImpl(Invokeable.java:244)
         at fuego.lang.Invokeable.invokeDynamic(Invokeable.java:188)
         at fuego.lang.Invokeable.invoke(Invokeable.java:160)
         at fuego.soaptype.SoapListener.invokeDynamic(SoapListener.java:104)
         at fuego.lang.Invokeable.invoke(Invokeable.java:160)
         at fuego.fengine.FEngineWebServiceExecutor$2.execute(FEngineWebServiceExecutor.java:133)
         at fuego.server.execution.DefaultEngineExecution$AtomicExecutionTA.runTransaction(DefaultEngineExecution.java:304)
         at fuego.transaction.TransactionAction.startBaseTransaction(TransactionAction.java:470)
         at fuego.transaction.TransactionAction.startTransaction(TransactionAction.java:551)
         at fuego.transaction.TransactionAction.start(TransactionAction.java:212)
         at fuego.server.execution.DefaultEngineExecution.executeImmediate(DefaultEngineExecution.java:123)
         at fuego.server.execution.EngineExecution.executeImmediate(EngineExecution.java:66)
         at fuego.fengine.FEngineWebServiceExecutor$1.run(FEngineWebServiceExecutor.java:65)
         at fuego.component.Message.process(Message.java:576)
         at fuego.component.ExecutionThread.processMessage(ExecutionThread.java:780)
         at fuego.component.ExecutionThread.processBatch(ExecutionThread.java:755)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:142)
         at fuego.component.ExecutionThread.doProcessBatch(ExecutionThread.java:134)
         at fuego.fengine.FEngineProcessBean.processBatch(FEngineProcessBean.java:244)
         at fuego.fengine.FEngineWebServiceExecutor$WebServiceExecutorPrincipal.processBatch(FEngineWebServiceExecutor.java:168)
         at fuego.component.ExecutionThread.work(ExecutionThread.java:839)
         at fuego.component.ExecutionThread.run(ExecutionThread.java:408)
    Caused by: java.lang.RuntimeException: java.lang.NumberFormatException: For input string: "jaa"
         at xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl.expenseReport(ExpenseReportServiceInternalAlbpmListenerImpl.xcdl:36)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
         at java.lang.reflect.Method.invoke(Unknown Source)
         at fuego.lang.JavaClass.invokeMethod(JavaClass.java:1410)
         at fuego.lang.JavaObject.invoke(JavaObject.java:227)
         at fuego.lang.Invokeable.invokeImpl(Invokeable.java:234)
         ... 21 more
    Caused by: java.lang.NumberFormatException: For input string: "jaa"
         at java.lang.NumberFormatException.forInputString(Unknown Source)
         at java.lang.Integer.parseInt(Unknown Source)
         at java.lang.Integer.valueOf(Unknown Source)
         at fuego.util.Conversion.tojava_lang_Integer(Conversion.java:934)
         at fuego.xobject.runtime.ConversionUtilities.fromString(ConversionUtilities.java:56)
         at fuegoblock.xml.XmlElementDeserializer.deserializeElement(XmlElementDeserializer.java:175)
         at fuegoblock.xml.XmlElementDeserializer.deserialize(XmlElementDeserializer.java:81)
         at fuegoblock.xml.DynamicXml.createObjectFrom(DynamicXml.java:160)
         at fuegoblock.xml.DynamicXml.createObjectFrom(DynamicXml.java:119)
         at xobject.ExpenseReportWebServiceImpl.ExpenseReportServiceInternalAlbpmListenerImpl.expenseReport(ExpenseReportServiceInternalAlbpmListenerImpl.xcdl:17)
         ... 28 more</ns1:stackTrace>
    <ns2:hostname xmlns:ns2="http://xml.apache.org/axis/">D-113014550</ns2:hostname>
    </detail>
    </soapenv:Fault>
    </soapenv:Body>
    </soapenv:Envelope>
    can anyone explain why this error is coming.?
    Edited by: user8937128 on May 19, 2010 6:58 AM

  • Unique rollback in a BPEL process using web services

    We are a cellular communication company using Oracle DB (10g) and Oracle Forms to run our business applications (customer care and the like). We have planned a system migration using the SOA approach with the latest release of Oracle BPEL Suite (business logic), Oracle ADF BC (presentation level), Oracle OAS (application server) and JDeveloper (application development IDE).
    Within our current applications we have processes that perform several tasks (inserts, updates and/or deletes on the same DB) as part of one atomic DB transaction. Using the SOA approach we&rsquo;ve deemed those tasks as being &lsquo;services&rsquo; that we, let&rsquo;s say for the sake of argument, could implement either as web services (so as to be published for reuse) or as stored procedures encapsulated via DB adapters (BPEL lexicon).
    Our biggest challenge, and hence our question to the SOA world, is how to attain that same unique transaction. We understand that there is no one perfect approach, for the &lsquo;solution&rsquo; depends on too many factors and choices; what we&rsquo;d like to know are past experiences people had or, at best, what do people consider what the best practices in the industry are regarding this matter.
    <strong><u>Approach A:</u></strong> all services are implemented as DB adapters (stored procedures and the like).
    <strong><u>PROS</u><u>:</u></strong> one single DB rollback should any service fail to execute properly and so undo all changes made so far.
    <u><strong>CONS:</strong></u> highly coupled, non-visible components (via UDDI); impossibility to manage, control and audit (via WS Manager) components; weak/poor SOA Governance.
    <u><strong>Approach B:</strong></u> all services are implemented as web services.
    <u><strong>PROS:</strong></u> loosely coupled, self-contained, and web accessible visible components (via UDDI) besides the ease to manage, control and audit (via WS Manager); strong SOA Governance.
    <u><strong>CONS:</strong></u> since each web service is a &lsquo;different&rsquo; transaction with its own &lsquo;commit&rsquo;, a unique rollback transaction for the whole process will not be possible should a WS fail, for previous WSs will have already committed their data changes before doing the rollback.
    <u><strong>Approach C:</strong></u> services implemented as a mix of web services and DB Adapters.
    <strong><u>PROS:</u></strong> those of Approach B for web services.
    <strong><u>CONS:</u></strong> those of Approach A (DB adapters) + those of Approach B (web services).
    <hr />
    So, the 64,000 dollar question is how to attain a single transaction when you have web services as part of your process? Do we need to &rsquo;build/create&rsquo; a schema/functionality similar to the &lsquo;DB-undo-segment&rsquo; in order to obtain a single rollback transaction for the whole process or does the BPEL COMPENSATE delivers this functionality somehow?
    Are we not seeing the obvious? Are we not seeing the forest because we&rsquo;re looking at a tree? Please keep in mind that we are using Oracle BPEL.
    Thanks a bunch,
    --Sergio                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

    Hi Marinus,
    you are absolutely right and not missing anything. OWSM does not free you from taking additional measures to block direct interaction with the unsecure WebService from not "authorized" clients. You must restrict the http response to the OWSM host only (either in the Apache or the OC4J configuration). See the related documentation.
    --olaf                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Java client for calling a XI web service

    Hello,
    does anyone have created a Java client
    with Apache Axis? I tried it and it works
    for web service which aren't provided by
    SAP XI, but if I use to call a XI web service
    something went wrong.
    The XI web service works. I tested it with
    XML Spy.
    I think there must be something special with
    XI web service.
    So anyone got a tutorial/guide for this???
    thanks
    chris

    Hola mi  nombre es Luis,
    Creyendo que eres español te escribo en tal idioma.
    He visto que a ti también te devolvía un error de autentificación 401, y que lo subsanaste, pero a mi con la solución que te dieron no me vale, ya que implemento el código que te ofrecieron para arreglarlo y ahora me da un fallo de "Server Error" poniendo en usuario y password, los correspondientes a XI.
    +Request_MI_outTurnoverDetailsDisplay_MI_outTurnoverDetailsDisplay req=new Request_MI_outTurnoverDetailsDisplay_MI_outTurnoverDetailsDisplay();
    wdContext.nodeRequest_MI_outTurnoverDetailsDisplay_MI_outTurnoverDetailsDisplay().bind(req);
    req._setUser("username");
    req._setPassword("password");+
    No sé si es que ese usuario y contraseña son otros distintos.
    Si pudieras ayudarme, te lo agradecería.
    Un saludo, Luis

  • IDOC or Web service for Vendor creation/updation from XI to R/3

    Hi,
    We have a scenario whereby the vendor master details in R/3 need to be created/updated by the data sent from XI. We are on XI 3.0 and R/3 ECC5.
    The options that we need to analyse best suiting the requirement are whether to use Web Service or whether to use IDOC.
    I am not very experienced in the usage of Web Service so it will be very helpful if you could please help me with the scenario build up and how it will update the records in R/3.
    From the point of view of the IDOC usage, the standard IDOC CREMAS03 is available to update the Vendor master data whereby the data is sent to XI in XML format and the data is mapped to IDOC structure and pushed out to R/3. I have checked the SDN forums and there have been discussions baout certain settings that need to be configured first to enable this IDOC scenario.
    Can you please help me in analysing which option to go for and what are the pros and cons of both and the complexity of implementation and if there are any rerequisites that need to be met for either option?
    Please advice.
    Regards,
    Archana

    Hi,
    Thanks for the suggestions and I personnaly favour the IDOC. However, the solution is not only looking at creating new Vendors in the R/3 system but also looking at updating the existing Vendors with the incoming data form the 3rd party.
    Can the same standard IDOC create and update the vendors or do I need to look at 2 different IDOCs?
    There will be a daily polling of data files via XI. The file format is going to be .txt and will be comma seperated.
    Is there any way of checking in XI itself the file duplication before transferring the data to R/3 as and when the files are received?
    On R/3 side, we were currently thinking of going forward with ABAP proxy which can create IDOC and then send the mail or somehow inform the business that some data was incorrect and therefore the IDOC's were not created for them or should we do it via RFC?
    We will also go forward with the custom table contianing the file names received till now to check for the sequence serial number.
    Please advice.
    Regards,
    Archana

  • Role of Web Services in cross organisation BPM

    What are the pros and cons of using web service based decentralise approach for managing Inter-Organisational BPM? What are the challenges and what are the benefits?
    Regards
    Ganesh Sawant

    PROS:
    Using the Webservices you can trigger the BPM Process and pass the values from the web dypro component which will available for the end user and pass it on to the BPM Proess.
    We can use EJB as a webservice, where the automated activity in the BPM can output the value based on the logic in the EJB Function. We can manage the automated activity which runs in the back ground of the process as per our logic and returns the value to the next task.
    CONS
    Using Webservices in the various activity with fewer data is not advisable as it takes longer time to deploy the process. And any change in the data in the webservices requires regularly re importing of the web services.

  • Creating a Web service

    Hi,
    I have a web dynpro application that can access an external database via EJB. I also have a web module (JSP). In the web dynpro application there is a button that calls a webpage from my web module. 
    Supposedly, when I click the button, the values in webpage will be taken from my external database (e.g. the text values of my webpage will come from my database).
    I have been told to create a web service using my EJB and have to import that web service to my web module using a java class. Can someone point me to a tutorial on how to do this?

    Hi mlsaldua,
    please check this code
    public class WsClnt2 {
         static final String userid = "test";
         static final String password = "init2you";
         static String soapRequestMsg = "<ns1:MaterialGetDetail
    xmlns:ns1='urn:sap-com:document:sap:soap:functions:mc-style'><Material>R-1111</Material><Plant>1200</Plant><Valuationarea>1200</Valuationarea></ns1:MaterialGetDetail>"
         static class TheAuthenticator extends Authenticator {
         public PasswordAuthentication getPasswordAuthentication() {
               return (new PasswordAuthentication(userid,
    password.toCharArray()));
         public static void main(String[] args) {
                try{
                       String url =
    http://host:port/sap/bc/srt/rfc/sap/ZWS_MATERIAL_DETAIL?sap-client=800
                           Authenticator.setDefault(new TheAuthenticator());
                           MessageFactory msgf = MessageFactory.newInstance();
                           SOAPMessage msg = msgf.createMessage();
                           SOAPBody body =
    msg.getSOAPPart().getEnvelope().getBody();
                           DocumentBuilderFactory dbf =
    DocumentBuilderFactory.newInstance();
                           dbf.setNamespaceAware(true);
                           DocumentBuilder db = dbf.newDocumentBuilder();
                           ByteArrayInputStream bis=new
    ByteArrayInputStream(soapRequestMsg.getBytes());
                           org.w3c.dom.Document doc = db.parse(bis);
                           body.addDocument(doc);
                           SOAPConnection connection  =
    SOAPConnectionFactory.newInstance().createConnection();
                       SOAPMessage reply = connection.call(msg, url);
                   reply.writeTo(System.out);
                     } catch (Exception e) {
                           // TODO Auto-generated catch block
                           e.printStackTrace();
    <classpath>
       <classpathentry kind="src" path=""/>
       <classpathentry kind="con"
    path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
       <classpathentry kind="lib" path="C:/SAAJ/saaj-api.jar"/>
       <classpathentry kind="lib" path="C:/SAAJ/saaj-impl.jar"/>
       <classpathentry kind="lib" path="C:/bi_sdk/lib/activation.jar"/>
       <classpathentry kind="lib" path="C:/SAAJ/New
    Folder/xercesImpl-1.5.jar"/>
       <classpathentry kind="lib" path="C:/SAAJ/xerces.jar"/>
       <classpathentry kind="lib" path="C:/SAAJ/xmlpublic-2.0.0.jar"/>
       <classpathentry kind="lib" path="C:/SAAJ/jaxb-xalan-1.5.jar"/>
       <classpathentry kind="lib" path="C:/SAAJ/jaxws-api-2.1-1.jar"/>
       <classpathentry kind="lib" path="C:/SAAJ/jaxb-api-1.5.jar"/>
       <classpathentry kind="lib" path="C:/jdk1.5.0_12/jre/lib/rt.jar"/>
       <classpathentry kind="output" path=""/>
    </classpath>
    Thanks  and Regards,
    Mithu

Maybe you are looking for