JNI, invoking javaVM through native

Hi Java Soft team,
I really enjoy working in Java . It is really a great technology that sun has brought. Right now I have some problems with JNI.
I want to invoke JavaVM from native(in C). my main aim is to run my java application through native. For code trial, I have used the native �invoke.c� available in tutorial, but building .exe file in VC++6.0, I am getting error(s). Please tell me where the problem is and how can it be solved.
After build button is pressed in VC++6.0 tool bar, the following error(s) are shown.
Note : jni.h, jni_md.h & javai.lib are in path.
Compiling�
Invoke.c
c:\invoke.c(34):warning c4047: �function�: �void **� differs in level of indirection from �const struct JNIInterface__***�
c:\invoke.c(34): warning C4022: �JNICreateJavaVM�: pointer mismatch for actual parameter 2.
Invoke.obj � 0 error(s), 2 warning(s)
Linking�
Invoke.obj: error LNK 2001: unresolved external symbol __imp__JNICreateJavaVM@12
Invoke.obj: error LNK 2001: unresolved external symbol __imp__JNIGetDefaultVMInitArgs@4
Debug/invoke.exe: fatal error LNK 1120: 2 unresolved externals.
Error executing link.exe.
Invoke.exe � 3 error(s), 2 warning(s)
Thanking you.
Shirish
(Bangalore, INDIA)

Hi,
Depending on which Java IDE you like and how much memory you got, you may want to set up command line compiles so that only your Java IDE is up. I use NetBeans www.netbeans.org with it's cpp module so that java and cpp files are editted inside the same IDE. A typical cmd file is:
set PATH=c:\jdk1.4\bin;"c:\Program Files\Microsoft Visual Studio\VC98\Bin";"c:\Program Files\Microsoft Visual Studio\Common\MSDev98\Bin"
set INCLUDE=.\;"c:\Program Files\Microsoft Visual Studio\VC98\Include";c:\jdk1.4\include;c:\jdk1.4\include\win32
set LIB="c:\Program Files\Microsoft Visual Studio\VC98\Lib"
cl /c /D "WIN32" -Ic:\jdk1.4\include -Ic:\jdk1.4\include\win32 -I"c:\Program Files\Microsoft Visual Studio\VC98\Include" -MT MachineController_md.c
cl /D "WIN32" -Ic:\jdk1.4\include -Ic:\jdk1.4\include\win32 -I"c:\Program Files\Microsoft Visual Studio\VC98\Include" -MT -GX -LD /TpMachineController.cpp MachineController_md.obj C:\jdk1.4\lib\jvm.lib C:\jdk1.4\lib\jawt.lib "C:\Program Files\Microsoft Visual Studio\VC98\Lib\ADVAPI32.LIB"
Then you are setup to use other c++ compilers on different/same platforms as well.

Similar Messages

  • Update through native sql

    Dear all,
    i have written a select query for Update oracle database through Native SQL.
    Query is
    W_FLG  = 'Y'
    UPDATE LPR_LEAVEPLAN_TRN SET FLOWLEVEL = W_FLG WHERE EMP_ID = '11200010'.
    LPR_LEAVEPLAN_TRN  is my oracle table
    i want to change the field of that table is FLOWLEVEL with W_FLG where employee id is 11200010
    here update is not working.
    can any body tell me how can update work with oracle database.

    i m doing same way........like this
      EXEC SQL.
       OPEN DBCUR FOR
        UPDATE LPR_LEAVEPLAN_TRN SET EMP_ID = '11210010' WHERE FLOWLEVEL = 1.
       if sy-subrc = 0.
         clear: W_FLG.
       endif.
       commit work.
         CATCH cx_sy_dynamic_osql_error.
        MESSAGE `Error in update!` TYPE 'I'.
        ENDEXEC.
    Here,
    LPR_LEAVEPLAN_TRN  is my oracle Table
    EMP_ID is (i want to Change)
    Plz Help

  • Invoking methods through reflection

    I need to check a property in the javax.faces.component.html.HtmlInputText.
    If i do it in the following manner,I get things fine:
    if(comp.getClass().getName().equalsIgnoreCase("javax.faces.component.html.HtmlInputText")) {
    String getter=((javax.faces.component.html.HtmlInputText)comp).getOnfocus();
    if(getter!=null) {
    System.out.println(getter);
    But if i invoke it through reflection,I get nothing.
    I am doing the following:
    Class reqClass = Class.forName("javax.faces.component.html.HtmlInputText");
    Method[] methodList = reqClass.getDeclaredMethods();
    int methodIdx = 0;
    for (int i = 0; i < methodList.length; i++) {
    Method reqMethod =methodList;
    if(reqMethod.getName().indexOf("getOn")== 0) //method starts with getOn
    // method accepts parameters, define the types in order here as Class[]
    Class[] classParams = new Class [] {};
    // set the method of the class object
    Method method = reqClass.getMethod( reqMethod.getName(), classParams );
    // pass values to fill parameters of method
    Object[] arguments = new Object [] {};
    // invoke method via reflection.Note that class has default constructor
    Object retobj=method.invoke( reqClass.newInstance() ,
    arguments );
    String getterResult = (String)retobj;
    if(getterResult!=null)
    System.out.println(reqMethod.getName() + " ## " + getterResult);
    What am i doing wrong while invoking the method through reflection.
    I get no exception either.

    It is a simple typo.
    An alternative I tried is the following ,but that does not work either.
    Class reqClass = Class.forName("javax.faces.component.html.HtmlInputText");
    Method[] methodList = reqClass.getDeclaredMethods();
    int methodIdx = 0;
    for (int i = 0; i < methodList.length; i++) {
    Method reqMethod =methodList;
    if(reqMethod.getName().startsWith("getOn")) //method starts with getOn
    System.out.println(reqMethod.getName());
    // pass values to fill parameters of method
    Object[] arguments = new Object [] {};
    // invoke method via reflection
    Object retobj=reqMethod.invoke( reqClass.newInstance(), arguments );
    String getterResult = (String)retobj;
    if(getterResult!=null)
    System.out.println(reqMethod.getName() + " ## " +getterResult);

  • SAMLAssertionID error while invoking webservice through webservice proxy

    I have created a web service proxy client using service WSDL deployed to weblogic standalone server as per the Fusion Dev guide [http://fmwdocs.us.oracle.com/doclibs/fmw/E10285_01/appslib7/web.1111/b31974/web_services.htm#CJADCDBG]. When i try to invoke the web service through the proxy i am seeing this error
    Exception in thread "main" javax.xml.ws.soap.SOAPFaultException: Unable to add security token for identity, token uri =http://docs.oasis-open.org/wss/oasis-wss-saml-token-profile-1.0#SAMLAssertionID
         at com.sun.xml.ws.fault.SOAP11Fault.getProtocolException(SOAP11Fault.java:197)
         at com.sun.xml.ws.fault.SOAPFaultBuilder.createException(SOAPFaultBuilder.java:122)
         at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:125)
         at com.sun.xml.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:95)
         at com.sun.xml.ws.client.sei.SEIStub.invoke(SEIStub.java:136)
         at $Proxy42.findTerritoriesInPartition(Unknown Source)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at weblogic.wsee.jaxws.spi.ClientInstanceInvocationHandler.invoke(ClientInstanceInvocationHandler.java:84)
         at $Proxy43.findTerritoriesInPartition(Unknown Source)
         at oracle.apps.sales.territoryMgmt.territories.serviceProxy.findTerritories.TerritoryServiceSoapHttpPortClient.main(TerritoryServiceSoapHttpPortClient.java:56)
    Please suggest how i can get rid of this error.
    I looked at the wsdl, i see that wss_saml_or_username_token_service_policy is added.
    <wsp:Policy orawsp:provides="{http://docs.oasis-open.org/ns/opencsa/sca/200903}authentication, {http://docs.oasis-open.org/ns/opencsa/sca/200903}clientAuthentication, {http://docs.oasis-open.org/ns/opencsa/sca/200903}clientAuthentication.message" wsu:Id="wss_saml_or_username_token_service_policy">
    Code in my proxy client:
    public class TerritoryServiceSoapHttpPortClient
    @WebServiceRef
    private static TerritoryService_Service territoryService_Service;
    private static final AddressingVersion WS_ADDR_VER = AddressingVersion.W3C;
    public static void main(String [] args)
    territoryService_Service = new TerritoryService_Service();
    TerritoryService territoryService = territoryService_Service.getTerritoryServiceSoapHttpPort();
    // Get the request context to set the outgoing addressing properties
    WSBindingProvider wsbp = (WSBindingProvider)territoryService;
    WSEndpointReference replyTo =
    new WSEndpointReference("http://adc60059fems.us.oracle.com:6035/salesTerrMgmtTerritories/TerritoryService", WS_ADDR_VER);
    String uuid = "uuid:" + UUID.randomUUID();
    wsbp.setOutboundHeaders( new StringHeader(WS_ADDR_VER.messageIDTag, uuid), replyTo.createHeader(WS_ADDR_VER.replyToTag));
    // Add your code to call the desired methods.
    try{
    wsbp.getRequestContext().put(WSBindingProvider.USERNAME_PROPERTY, "SALES_ADMIN");
    wsbp.getRequestContext().put(WSBindingProvider.PASSWORD_PROPERTY, "Welcome1");
    FindTerritoriesInPartition terr = new FindTerritoriesInPartition();
    terr.setPartitionType("PRODUCTION");
    terr.setTerritoryService(territory);
    territoryService.findTerritoriesInPartition(terr);
    catch(ServiceException se){
    Thanks,
    Sekar

    Hi Subramanyam,
    There is a very simple way to invoke web service through code using ServiceFactory classes. See if you can access this link[http://fmwdocs.us.oracle.com/doclibs/fmw/E10285_01/appslib7/doc.1111/e10308/uc_adf_to_adf.htm#BDCEDDDC]. Looks like creating proxy through Jdev and writing client code using ServiceDelegateImpl is a very costly approach, it creates lot of files and it fails to invoke service when SAML is enabled in the server side.
    If you could not access this link, follow these steps
    1. In connections.xml
    <Reference name="{http://xmlns.oracle.com/apps/sales/territoryMgmt/territories/territoryService/}TerritoryService" className="oracle.jbo.client.svc.Service" xmlns="">
    <Factory className="oracle.jbo.client.svc.ServiceFactory"/>
    <RefAddresses>
    <StringRefAddr addrType="serviceInterfaceName">
    <Contents>oracle.apps.sales.territoryMgmt.territories.territoryService.TerritoryService</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="serviceEndpointProvider">
    <Contents>ADFBC</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="jndiName">
    <Contents>TerritoryServiceBean#oracle.apps.sales.territoryMgmt.territories.territoryService.TerritoryService</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="serviceSchemaName">
    <Contents>TerritoryService.xsd</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="serviceSchemaLocation">
    <Contents>oracle/apps/sales/territoryMgmt/territories/territoryService/</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="jndiFactoryInitial">
    <Contents>weblogic.jndi.WLInitialContextFactory</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="jndiProviderURL">
    <Contents>t3://adc60108fems.us.oracle.com:6046</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="jndiSecurityPrincipal">
    <Contents>SALES_ADMIN</Contents>
    </StringRefAddr>
    <StringRefAddr addrType="jndiSecurityCredentials">
    <Contents>Welcome1</Contents>
    </StringRefAddr>
    </RefAddresses>
    </Reference>
    2. Create a java file with a main method, sample code to invoke service
    import commonj.sdo.helper.DataFactory;
    import oracle.jbo.client.svc.ServiceFactory;
    public static void territoryGet(){
    String TERRITORY_SERVICE_NAME = "{http://xmlns.oracle.com/apps/sales/territoryMgmt/territories/territoryService/}TerritoryService";
    TerritoryService terrService = (TerritoryService)ServiceFactory.getServiceProxy(TERRITORY_SERVICE_NAME);
    DataFactory dataFactory = ServiceFactory.getDataFactory(terrService);
    // Create Territory
    Territory territory = (Territory)dataFactory.create(Territory.class);
    territory.setTerritoryLevel(1L);
    territory.setStatusCode("FINALIZED");
    java.util.Date currentDate = new java.util.Date();
    Calendar cal = Calendar.getInstance();
    cal.setTime(currentDate);
    territory.setEffectiveEndDate(new java.sql.Date(cal.getTimeInMillis()));
    territory.setEffectiveStartDate(new java.sql.Date(cal.getTimeInMillis()));
    List<Territory> lst = terrService.findTerritoriesInPartition(territory, "PRODUCTION");
    System.out.println("Size: " + lst.size());
    I also had succeeded using ServiceDeleteImpl, but i prefer ServiceFactory which is very simple. I can also share how to achieve using the proxy which jdev generates.
    ~Sekar

  • Invoking jar through jar

    hi all,
    I have exported the "frames.java" file into a jar file called "frames.jar". I have also exported "invokejar.java" file into a jar file called "invokejars.jar".
    On doubleclicking invokejars.jar file, its not invoking frames.jar file. But when i execute invokejars.jar file through command prompt it works fine. Please help me to solve this problem.
    frames.java
    import java.awt.*;
    import javax.swing.*;
    public class frames extends JFrame
         public frames()
              super("Frames");
              setLayout(null);
              setSize(500,500);
              setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
              setVisible(true);
         public static void main(String[] args) {
              // TODO Auto-generated method stub
              frames fr=new frames();
    invokejar.java
    import java.io.*;
    public class invokejars
    public static void main(String arg[])
    try
    Runtime rt = Runtime.getRuntime();
    Process proc = rt.exec("cmd.exe /C java -jar frames.jar");
    catch(Exception er)
                   System.out.println("Exception is :"+er);
    Thanks in advance
    Regards

    Is any part of the code firing? If not, double check your classpath. CLASSPATH should be set in the env file (default.env) and not the system environment. What you posted seems like it is missing some entries. Here is an example of the default CLASSPATH setting from an 11.1.1.4 installation.
    CLASSPATH=C:\Oracle\Middleware\as_1\forms\j2ee\frmsrv.jar;C:\Oracle\Middleware\as_1\jlib\ldapjclnt11.jar;C:\Oracle\Middleware\as_1\jlib\debugger.jar;C:\Oracle\Middleware\as_1\jlib\ewt3.jar;C:\Oracle\Middleware\as_1\jlib\share.jar;C:\Oracle\Middleware\as_1\jlib\utj.jar;C:\Oracle\Middleware\as_1\jlib\zrclient.jar;C:\Oracle\Middleware\as_1\reports\jlib\rwrun.jar;C:\Oracle\Middleware\as_1\forms\java\frmwebutil.jar;C:\Oracle\Middleware\as_1/jlib/start_dejvm.jar;C:\Oracle\Middleware\as_1\opmn\lib\optic.jarDepending on your environment, it may be necessary to also add the importer to the classpath: C:\Oracle\Middleware\as_1\jlib\importer.jar
    Given all that, why are you using a remote web service for a calculator rather than something like a java bean which will run locally? There is an example in the Forms demo set and likely many others on the web.
    http://www.oracle.com/technetwork/developer-tools/forms/downloads/index.html
    There is a calculator bean on a web site we often recommend, but be aware they appear to be having some site problems, so it may not be accessible.
    http://forms.pjc.bean.over-blog.com/article-35505095.html

  • Invoke exe through java code(using java.lang.Runtime)

    Iam trying to invoke an exe from java code.If i give the complete path for that exe it is running fine .But if i set the environment variable and directly execute the exe through command prompt it iss running fine , but it fails to run when i do the same using java code i.e. java.lang.Runtime.exec function

    Give "//" for directory seperator.
    E.g. r.exec("c://test//test.exe",null);
    Why? That doesn't look correct.It is correct. It will work fine. Try it out.But it doesn't add or solve anything. A forward slash
    does not need to be escaped.'
    It's not even escaping. It's just doubling up. If that works, I'd bet "C://///test///////test.exe" does also.

  • How to Invoke BPEL through JAVA

    I am struggling since last 4-5 days to invoke BPEL process through java.
    So can any one provide me with full code.
    I want any java code like jsp,core java,servlets etc.
    Here is my jsp code with which I am trying to invoke my BPEL process named 'invoke'.which has just one input parameter 'InvokeProcessRequest'.
    The error is 500 internal server error.
    also,
    I want to know,
    what parameter to write in Locator class.
    whether we have to make in changes in any xml file or so.
    <%@page import="com.oracle.bpel.client.Locator" %>
    <%@page import="com.oracle.bpel.client.NormalizedMessage" %>
    <%@page import="com.oracle.bpel.client.dispatch.IDeliveryService" %>
    <html>
      <head>
       <title>InvokeBPEL</title>
      </head>
    <body>
    <%
      String Payload = request.getParameter("Payload");
    %>
        <!-- Construct HTML form here -->
         <h3>Invoke</h3>
    <h4>Application Form</h4>
    <form>
       <table>
       <tr>
         <td>Payload</td>
         <td><input type="text" name="Payload" value="123456789"></td>
       </tr>
       <tr>
         <td>InvokeProcessRequest</td>
         <td><input type="text" name="InvokeProcessRequest" value="invoke"></td>
       </tr>
       </table>
       <input type="submit" value="Send Application">
    </form>
    <%
        // 1. Get form fields
         String InvokeProcessRequest = request.getParameter("InvokeProcessRequest"); 
        // 2. Create loan application XML document
          String xml = "<invoke xmlns=\"http://www.w3.org/2001/XMLSchema\">"      
             + "<Payload>" + Payload + "</Payload>"     
          + "<InvokeProcessRequest>" + InvokeProcessRequest + "</InvokeProcessRequest>"     
            + "</invoke>";
        // 3. Initiate the BPEL process here
          // Connect to Oracle BPEL server
             Locator locator = new Locator("default","bpel");
            IDeliveryService deliveryService = (IDeliveryService)
            locator.lookupService(IDeliveryService.SERVICE_NAME );
             // Construct a normalized message and send to Oracle BPEL Process Manager  
         NormalizedMessage nm = new NormalizedMessage();  
         nm.addPart("payload", xml);
           // Initiate the BPEL process  
         deliveryService.post("invoke", "initiate", nm);
         %>    <p>BPEL Process <code>MyLoanFlow</code> initiated    
                 with a loan application containing Payload=<%= Payload %></p>
               <p>Please refer to the   
               <a href="/BPELConsole/displayInstance.jsp">BPEL Console</a>
                to see the status of the initiated MyLoanFlow BPEL Process.</p>
         <%
    %>
    </body>
    </html>

    Krishna, Not sure what you mean by 'normal' web service....I mean, is BPEL service not normal, is it not as per WS standards. It would be interesting if you could shed some light on that.
    On the question of calling BPEL, I thought there were two methods - one is using the BPEL PM API, which uses the locator class to get hold of BPEL PM instance and then call a deployed bpel service
    The other way is to develop a web service proxy using JDeveloper. Its a very simple process. Once you do that, you can call the proxy from Java.

  • Gmail through native message app?

    Is there a way to get Gmail/Google Apps mail to come through the native Messages app?
    We've recently switched to Google Apps & GMail from an Exchange environment and the GMail app for Blackberry's has gone down like a brick.  It's hated - primarily because of the threaded/grouped message/conversation system.
    Can gmail be received through the standard Messages app as we used to use for our exchange mail?
    Please say it can...

    Try this, open your Messages folder > Menu key > Options > Inbox Settings > and CHECK that email address to be included in the main messages folder.
    1. If any post helps you please click the below the post(s) that helped you.
    2. Please resolve your thread by marking the post "Solution?" which solved it for you!
    3. Install free BlackBerry Protect today for backups of contacts and data.
    4. Guide to Unlocking your BlackBerry & Unlock Codes
    Join our BBM Channels (Beta)
    BlackBerry Support Forums Channel
    PIN: C0001B7B4   Display/Scan Bar Code
    Knowledge Base Updates
    PIN: C0005A9AA   Display/Scan Bar Code

  • Invoke workflow through Custom.pll

    All,
    We have a requirement to invoke Workflow process for every service request create / update and I am calling the wf like below in custom.pll
    WHEN-VALIDATE-RECORD
    XXPPS_CRM_WF_PROCESS.XXPPS_WF_LAUNCH (                                     08291302      ,                                     'REFUND-PROCESS'    ,                                     'CRM QA'       ,                                     P_RETURN_MESG );
    I am getting below error
    FRM-40735 WHEN-VALIDATE-RECORD trigger raised unhandled exception ORA-20002 Does anyone has any idea ?? Can we launch the workflow through Custom.pll ?? Please advise...

    This forum is for general Oracle Forms questions.  Please post your question in the EBS General Discussion forum.  If you have a general Forms question, by all means, ask it here!
    Craig...

  • Invoking webservices through SOAPUI

    Hi,
    Getting error while invoking through SoapUI.
    The input Soap message is:
    <soapenv:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:exp="http://exposedcomputation.webservice.pas.adminserver.com">
    <soapenv:Header>
    <wsse:Security soapenv:mustUnderstand="1" xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
    <wsse:UsernameToken wsu:Id="UsernameToken-28490615" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd">
    <wsse:Username>install</wsse:Username>
    <wsse:Password Type="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-username-token-profile-1.0#PasswordText">install</wsse:Password>
    </wsse:UsernameToken>
    </wsse:Security>
    </soapenv:Header>
    <soapenv:Body>
    <exp:processExposedComputation soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
    <computationId xsi:type="xsd:string">123</computationId>
    <inputXml xsi:type="xsd:string">
    <Parameters>
    <Parameter Name="Variable1">5</Parameter>
    <Parameter Name="Variable2">6</Parameter>
    </Parameters>
    </inputXml>
    </exp:processExposedComputation>
    </soapenv:Body>
    </soapenv:Envelope>
    The error response is:
    <?xml version="1.0" encoding="UTF-8"?><soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"><soapenv:Body><soapenv:Fault><faultcode>soapenv:Server</faultcode><faultstring></faultstring></soapenv:Fault></soapenv:Body></soapenv:Envelope>

    a "server" error means something went wrong on the server. you should check the server logs for the error message.

  • Invoking Menu through Code

    Is there any way I can invoke the menu code when I press a button in the form. The menu is attached to form.
    Thanks in advance.

    Hi Rajesh,
    The form object has a mode property which you can set to change the current mode of the form. This should allow you to open a form and set its default mode through code to Find (fm_FIND_MODE).
    Kind Regards,
    Owen

  • Invoking gdb through a Java program as subprocess

    Hi,
    I try to invoke the gdb through a java program using Runtime.exec(...)
    as a Process, I also try to get the output of gdb using InputStream object, Is there any way to provide the options to gdb when it is started as Process & also tracing it's output.
    please help Me.

    Have a read of
    http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-
    traps.htmlwhat ? I'm not sure what you are referring to with your 'what?' BUT that reference should be read by anyone using Runtime.exec().
    >
    the unix command such as
    tail xxxxxxxxxxxxxxxxxx
    and write it to a shell script,and invoke it by
    java,any problems?I don't agree with this. There is no need for a shell script. This would just add to the complexity without adding any extra functionality.
    >
    but sabre150 has give a good solutionThank you.

  • Invoking activemq through axis webservice

    Hi,
    I have written a java code to invoke activemq remotely, its working fine.
    But when I converted the java code to a webservice and when I tried to invoke the activemq through this webservice, it is not at ll invoking the
    activemq...........I dont know where exactly I am going wrong??????can any one help me please.................!!
    Regards,
    S.Vishal

    Looks like the URL is wrong.. ( 404 error). Make sure the url is pointing to OSB managed server port and not to the admin server.. sbconsole runs on admin server but the port you specifiy in the URL used to access OSB from the webservice client should point to the osb managed servers...

  • Invoke sql 2005 native web services

    Dear all,
    I am trying to  invoke from sap ecc 6.0 a native web services written in sql 2005.
    For instance the web service path is something like http://10.1.0.197:8080/EmployeeXml?wsdl .
    The web method is GetEmployeesXml
    If I try to consume via custom .net application, it works but when I try to do the same in sap
    following this guide
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/802edea6-274e-2e10-fd95-e5e1a8bc0892?QuickLink=index&overridelayout=true
    I get the error http not supported.
    The differnce between an asp.net web services (where everythings works) and this one is regarding the autentication.
    For the first one it is possible to specify anonymous login for second it is necessary to specify the username and password.
    I kindly ask you to give any help to solve this issue, or is there a manual for sm59?
    Thank you very much

    Try with the following:
    <xsd:complexType name="SqlResultStream">
       <xsd:sequence>
          <xsd:element name="SqlRowSet" type="sqlsoaptypes:SqlRowSet" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="SqlXml" type="sqlsoaptypes:SqlXml" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="SqlMessage" type="sqlmessage:SqlMessage" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="SqlRowCount" type="sqlrowcount:SqlRowCount" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="SqlResultCode" type="sqlsoaptypes:SqlResultCode" minOccurs="0" maxOccurs="unbounded"/>
          <xsd:element name="SqlTransaction" type="sqltransaction:SqlTransaction" minOccurs="0" maxOccurs="unbounded"/>
       </xsd:sequence>
    </xsd:complexType>
    You also have to know that this is not a perfect equivalent, as no tag can replace the xsd:choice. The xsd:choice means that only one of the elements can occur, while in xsd:sequence any of the elements can occur. But you should be able to achieve the same with a properly built mapping: create only one of the fields, and leave the rest empty - this is possible thanks to minOccurs="0".
    Hope this helps,
    Greg

  • JNI - How to find native handle for a JInternalFrame

    use (and works) this code on a C DLL to interface with JNI and JAVA to obtain a native handle for a JFrame:
    JAWT awt;
    JAWT_DrawingSurface *ds;
    JAWT_DrawingSurfaceInfo *dsi;
    JAWT_Win32DrawingSurfaceInfo *dsi_win;
    jboolean result;
    jint lock;
    awt.version = JAWT_VERSION_1_4;
    result = JAWT_GetAWT(env, &awt);
    assert(result != JNI_FALSE);
    ds = awt.GetDrawingSurface(env, javacomponent);
    assert(ds != NULL);
    lock = ds->Lock(ds);
    assert((lock & JAWT_LOCK_ERROR) == 0);
    dsi = ds->GetDrawingSurfaceInfo(ds);
    dsi_win = (JAWT_Win32DrawingSurfaceInfo*)dsi->platformInfo;
    nativeHanle = dsi_win->hwnd;
    ds->FreeDrawingSurfaceInfo(dsi);
    ds->Unlock(ds);
    awt.FreeDrawingSurface(ds);
    This code works fine if javacomponent is a Canvas or a JFrame, but if it is a JInternalFrame, locking the drawing surface gives error (lines 'lock = ds->Lock(ds);' and 'assert((lock & JAWT_LOCK_ERROR) == 0);')
    Thanks in advance.

    Hello,
    I'm not sure about what you're trying to achieve but, as far as I know, JInternalFrames don't have a native counterpart (peer) as other top level swing components or as awt components in general. They are just painted over their Container (usually a JDesktopPane).

Maybe you are looking for