Executing DB2 API (without JDBC)

I'm trying to call a DB2 API (e.g. sqlbgtss) from a Java program. I do not want to use JDBC.
Can someone help me?

You probably have to write your own bridge in JNI then.

Similar Messages

  • Redirected restore - automatic storage - using DB2 api not br tools

    I've done 100+ redirected restores for non-automatic storage databases using TSM only using the DB2 api's  - and not the BR tools . 
    Now, I'm challenged with a redirect automatic storage DB.
    *SQL1277N  Restore has detected that one or more table space containers are*
    inaccessible, or has set their state to 'storage must be defined'.
    DB20000I  The RESTORE DATABASE command completed successfully.
    The backup image gets read and the TAG's for the containers are build.  I can see that by doing a "df" on the filesystem level.  But as soon as the restores attempts to write data into the containers, I get the above error message.
    Here are my steps: 
    1. offline backup using db2 api on source
    2. create restore script
    RESTORE DB DCC use adsm open 4 sessions TAKEN AT 20080722155529 on /db2/SCC/sapdata1,/db2/SCC/sapdata2,/db2/SCC/sapdata3,/db2/SCC/sapdata4 ,/db2/SCC/sapdata5,/db2/SCC/sapdata6,/db2/SCC/saptemp1 dbpath on /db2/SCC INTO SCC NEWLOGPATH /db2/SCC/log_dir with 16 buffers REPLACE EXISTING redirect parallelism 2 without rolling forward without prompting
    3. drop the target db and clean out all sapdata's and saptemp
    4. create db on target:db2 create database scc automatic storage yes on /db2/SCC/sapdata1,/db2/SCC/sapdata2,/db2/SCC/sa**
    +pdata3,/db2/SCC/sapdata4,/db2/SCC/sapdata5,/db2/SCC/saptemp1 dbpath on /db2/SCC+
    5. update target db cfg with tsm parms so that it will be able to read the TSM tapes.  ie tsm_mgmtclass, tsm_nodename, tsm_owner, tsm_password
    6.  setup my dsm.opt with
    +SErvername       redirect_restore+
    and the dsm.sys with a new stanza
    SErvername  redirectrestore_
       SchedMode            PROMPT
       nodename             useagan1743ddb2_
       PasswordAccess       prompt
       COMMMethod         TCPip
       TCPPort            1500
       TCPServeraddress     unixtsm1p.ecolab.com 
    7.  as root I run the /db2/db2<sid>/sqllib/adsm/dsmapipw password to make sure to have access to the tsm nodename.
    8.  execute restore script on target
    RESTORE DB DCC use adsm open 4 sessions TAKEN AT 20080722155529 on /db2/SCC/sapdata1,/db2/SCC/sa
    pdata2,/db2/SCC/sapdata3,/db2/SCC/sapdata4 ,/db2/SCC/sapdata5,/db2/SCC/sapdata6,/db2/SCC/saptemp
    1 dbpath on /db2/SCC INTO SCC NEWLOGPATH /db2/SCC/log_dir with 16 buffers REPLACE EXISTING redir
    ect parallelism 2 without rolling forward without prompting;

    Hello Anke,
    Looks like your create database statement is missing the collating sequence, codeset etc.  Here is a database create statement I got from my sapinst for your reference:
    create database SX1
      automatic storage yes on /db2/SX1/sapdata1, /db2/SX1/sapdata2, /db2/SX1/sapdat
    a3, /db2/SX1/sapdata4
      dbpath on /db2/SX1
      using codeset UTF-8
      territory en_US
      collate using IDENTITY_16BIT
      pagesize 16 k
      dft_extent_sz 2
      catalog tablespace managed by automatic storage extentsize 2
      with 'SAP database SX1';
    Regards,

  • Connecting to DB2 Database using JDBC for select/Insert

    Hi,
    I am trying to connect to an DB2 Database using  JDBC adapter, I have build an UDF for the same.
    The UDF will try to query the database in the form of Select and INSERT.I am using the LOOKUP API provided by SAP.When I try to execute the UDF I have received the following error.can any of you provide the solution for the error and also is it that the JDBC adapter has to be situated on Central Adapter engine to execute the API, can the JDBC adapter used for executing the INSERT statement.
    Exception during processing the payload.Problem when calling an adapter by using communication channel JDBC_PIDB_Receiver_CC (Party: , Service: XIDB_BSRV, Object ID: 59f2d7694acc3e81840f89b0169d9323) XI AF API call failed. Module exception: (No information available). Cause Exception: (No information available).
    com.sap.aii.mapping.lookup.LookupException: Problem when calling an adapter by using communication channel JDBC_PIDB_Receiver_CC (Party: , Service: XIDB_BSRV, Object ID: 59f2d7694acc3e81840f89b0169d9323) XI AF API call failed. Module exception: (No information available). Cause Exception: (No information available).
         at com.sap.aii.ibrun.server.lookup.AdapterProxyLocal.execute(AdapterProxyLocal.java:131)
         at com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.execute(SystemAccessorInternal.java:68)
         at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:149)
         at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:77)
         at com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:169)
         at com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:178)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:296)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:211)
         at com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:496)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:634)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
    Root Cause:
    com.sap.aii.af.service.api.AFException: XI AF API call failed. Module exception: (No information available). Cause Exception: (No information available).
         at com.sap.aii.af.service.api.AdapterAccess.sendMsg(AdapterAccess.java:214)
         at com.sap.aii.af.service.api.AdapterAccess.execute(AdapterAccess.java:283)
         at com.sap.aii.ibrun.server.lookup.AdapterProxyLocal.execute(AdapterProxyLocal.java:123)
         at com.sap.aii.ibrun.server.lookup.SystemAccessorInternal.execute(SystemAccessorInternal.java:68)
         at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:149)
         at com.sap.aii.ibrun.server.lookup.SystemAccessorHmiServer.process(SystemAccessorHmiServer.java:77)
         at com.sap.aii.utilxi.hmis.server.HmisServiceImpl.invokeMethod(HmisServiceImpl.java:169)
         at com.sap.aii.utilxi.hmis.server.HmisServer.process(HmisServer.java:178)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:296)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.processRequestByHmiServer(HmisServletImpl.java:211)
         at com.sap.aii.utilxi.hmis.web.workers.HmisInternalClient.doWork(HmisInternalClient.java:70)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doWork(HmisServletImpl.java:496)
         at com.sap.aii.utilxi.hmis.web.HmisServletImpl.doPost(HmisServletImpl.java:634)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:102)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:172)
    Thanks,
    Kiran.

    Hi,
    have you deployed the JDBC driver for your DB2 database in your XI system........if not, then ask your basis guys to find the weblog to deploy the JDBC driver in XI system and then deploy your DB2 database driver in your JDBC driver in XI system............
    then again execute your scenario.
    Regards,
    Rajeev Gupta

  • Execute a command without thread

    Hi....i have to execute a command in DOS and i'm using runtime java class with its method exec(). The process works perfectly but in my code i have to execute that command without a thread because the successive operations will work only if the command terminated correctly. What can i do to resolve it?

    String cmd = input.getTxtDb2Cmd();
    Process p = Runtime.getRuntime().exec(cmd);
    int r = p.waitFor();
    if (r != 0)
    throw new RuntimeException("db2 command failed");
    i've to invoke a db2 command that import a txt file in a db table. After this code i've some operations that works with this table so i've to terminate this import before execute other functions.

  • Executing DB2 Functions

    Hi ,
    Is there a way to execute DB2 functions or procedures as part of process flow. OWB 11.2 allows to import but how is it executed ??
    Connection is Native via JDBC drivers.
    Thanks,
    Jason.

    Hi David
    Thanks for the reply. Can the function be published as web service and called in process flow ? There is an option when i right click the function but when i try to publish it throws error. Is that only for Oracle functions ?
    Thanks
    Jason

  • Submitting data through API without exposing DB credentials

    Submitting transaction / master data through API without exposing DB credentials
    I am developing a scenario where I will submit transaction / master data like sales order / master item to Oracle apps (EBS) through MS Excel via API / interface table but like to provide only apps (EBS) user credentials rather then DB credentials so DB password could not expose to normal end user. Please suggest something on same.
    [email protected]
    Thanks & regards,
    Sachin Gupta

    Sachin, you need a valid userid and password to connect to the database.
    Since these APIs are defined under apps, you need apps password to execute them.
    The workaround is that you define a new d/b userid.
    Grant execute on the API (and other objects as necessary) to this user.
    And then you call the api using the new userid and password.
    This way you are not exposing apps password. But since this means you have to grant a number of accesses to this new user.
    If you can use the interface tables, it becomes a little easier.
    All you have to do is grant insert access on a handful of interface to this new userid. And then you schedule a concurrent program that will process the interface records.
    If you absolutely can not expose ANY database password, then you can communicate with EBS using flat files. Your system creates a flat file on the server and a scheduled program in EBS reads the files and calls appropriate api.
    Hope this helps,
    Sandeep Gandhi

  • Does TT support OCI API except JDBC and ODBC?

    Hi
    Does TT support OCI API except JDBC and ODBC? or Do we have any plan to support OCI in the future

    Oracle policy does not permit us to give any commitment to when or if any specific functionality will be delivered. My understanding is that we plan to deliver this in the next major release of TimesTen (which may or may not be called 8.0) that is released after Oracle 11g (since a lot of the changes needed to enable OCI support for TimesTen are in the 11g client). We currently hope that this release will be available sometime in CY2008.
    You should not rely on any of the above information as it is, as always, subject to change without notice.
    Chris

  • How can i execute Spaces API in java main class?

    Hi
    I am able to execute Spaces API through portal application. However if i try to execute it in java main class, its throwing an exception
    "SEVERE: java.io.FileNotFoundException: .\config\jps-config.xml (The system cannot find the path specified)"
    oracle.wsm.common.sdk.WSMException: WSM-00145 : Keystore location or path can not be null or empty; it must be configured through JPS configuration or policy configuration override.
    How can i set this path, so that i can execute Spaces API from java main class.
    Need this main class to configure in cron job, to schedule a task.
    Regards
    Raj

    Hi Daniel
    Currently i have implemented create functionality in my portal application using Spaces API, which is working fine. Now the requirement is, i need to implement a "Cron Job" to schedule a task, which will execute to create space(for example once in a week). Cron job will execute only the main method. So I have created java main class, in which I have used Spaces API to perform create space operation. Then it was giving exception.
    Later I understood the reason, as I am executing the Space API with a simple JSE client, its failing since a simple java program has no idea of default-keystore.jks, jps-config.xml, Security Policy. Hence i have included those details in main class. Now I am getting new error,
    SEVERE: WSM-06303 The method "registerListener" was not called with required permission "oracle.wsm.policyaccess"
    For your reference i have attached the code below, please help. How can i use Spaces API in java main method(i mean public static void main(String[] args) by giving all required information.
        public static void main(String[] args) throws InstantiationException,
                                                      GroupSpaceWSException,
                                                      SpacesException {
            Class2 class2 = new Class2();
            GroupSpaceWSContext context = new GroupSpaceWSContext();
            FactoryFinder.init(null);
            context.setEndPoint("http://10.161.226.30/webcenter/SpacesWebService");
            context.setSamlIssuerName("www.oracle.com");
            context.setRecipientKeyAlias("orakey");
            Properties systemProps = System.getProperties();
            systemProps.put("java.security.policy","oracle/wss11_saml_or_username_token_with_message_protection_client_policy");
            systemProps.put("javax.net.ssl.trustStore","C:\\Oracle\\Middleware11.1.7\\wlserver_10.3\\server\\lib\\cacerts.jks");
    systemProps.put("oracle.security.jps.config","C:\\Oracle\\Middleware11.1.7\\user_projects\\domains\\workspace\\system11.1.1.7.40.64.93\\DefaultDomain\\config\\fmwconfig\\jps-config.xml");
            systemProps.put("javax.net.ssl.keyStore",C:\\Oracle\\Middleware11.1.7\\user_projects\\domains\\workspace\\system11.1.1.7.40.64.93\\DefaultDomain\\config\\fmwconfig\\consumer.jks");
            systemProps.put("javax.net.ssl.keyStorePassword", "Test12");
            System.setProperties(systemProps);
            GroupSpaceWSClient groupSpaceWSClient;
            try {
                groupSpaceWSClient = new GroupSpaceWSClient(context);
                System.out.println("URL: " +
                                   groupSpaceWSClient.getWebCenterSpacesURL());
                //delete the Space
                List<String> groupSpaces = groupSpaceWSClient.getGroupSpaces(null);
                System.out.println("GroupSpaces:: " + groupSpaces.size());
            } catch (Exception e) {
    Regards
    Raj

  • Use of JTA API in JDBC programs.

    Hi,
    Where we can use JTA API in JDBC programs. what is the significance of UserTransaction interface in JDBC programs. I heard that when we are using two databases in same program then we use this JTA API. Can't we do this by using,
    connection.setAutoCommint(false);
    // code to work with two database
    connection.commit();
    does it wont work.
    Please suggest me.
    Thanks
    Satish

    I heard that when we are using two
    databases in same program then we use this JTA API.
    Can't we do this by using,
    connection.setAutoCommint(false);
    // code to work with two database
    connection.commit();This will work if there are no errors or crashes, but it can seriously fail otherwise.
    To find out more: you can download our JTA from http://www.atomikos.com and go through the JTA user guide. It includes the answer to your question.
    Alternatively, feel free to check our transactions community forum on http://www.atomikos-support.com/forums (which we check more often than this one).
    Best,
    Guy

  • Stored procedure by using EXECUTE at the sender JDBC

    We have Scenario from JDBC to RFC (ASYNCH).We are using Oracle DB,at the database side we have a stored Procedure and inside the Procedure we are accessing multiple table.
    My query is how can we excecute update sql statement a stored procedure by using EXECUTE at the sender JDBC?
    EXECUTE SP_STUDENT_UPDATE
    ERROR: 'java.sql.SQLException: ORA-00900: invalid SQL statement '. For details, contact your database server vendor.

    Hi. Peter.
    yes , is possible to update your rows in your sp.
    If you want the data determined from the Query SQL Statement to remain in the database unchanged after being sent successfully, enter <TEST>.This is recommended if the data has not only been read, but also changed by a stored procedure entered under Query SQL Statement.
    http://help.sap.com/saphelp_nw73/helpdata/en/7e/5df96381ec72468a00815dd80f8b63/content.htm?frameset=/en/48/465581929734d9e10000000a42189d/frameset.htm&current_toc=/en/ca/b977f1c7814201954f20bb87ad7aab/plain.htm&node_id=64
    Could you put your sp? Maybe something is  wrong .
    Regards
    Lucho

  • Create a new user with Privileges to execute Seeded API's

    Hi,
    We have a requirement from our client, they want to create a new user with Privileges to execute Seeded API’s,
    So they dont want to execute using APPS user.
    We want to know is it possible to have a new user for executing seeded API's and if so what all priveleges we need to have.
    We are on 12.1.3 with 11.2.0.3  two node RAC Database on Exadata and Exalogic servers.
    Waiting for your suggestions and replies.
    Thanks

    Hi,
    Plz update this forum,
    and give me a suggestion at the earliest,
    Waiting for your valuable advice.
    Thanks

  • UserTransactions without JDBC?

    Hi!
    Is it possible to use UserTransactions without JDBC and EJBs.
    I tried this (with WebSphere 3.5):
    int i=1;
    utx.begin();
    i++;
    utx.rollback();
    System.out.println(i);
    But the rollback does not work.
    The output is 2 and not 1.
    Is there a possibility to do something like that?
    cu...
    Torsten

    Hi,
    A transaction in JTA only spans work done through javax.transaction.xa.XAResource instances.
    The rollback will only work for resources that are enlisted with the transaction.
    In fact, an instance of XAResource in a handle to a transactional context on some object. To make it work for your case, you would have to implement an object that encapsulates the i counter, and is able to return an XAResource that can be enlisted with the transaction.
    The rollback method would then restore the previous value of i.
    Making this work in a valid way would require logging the state of the object as well, since XAResources can be prepared (meaning that the work can still be rolled back, but needs to be recoverable after a crash).
    Best,
    Guy

  • How can you execute a form without connecting to database?

    Hello,
    Is it possible to run a form without connecting to database? If Yes, how?
    Thanking you very much
    Thobula Rakesh

    Hello Form Friends,
    After R&D I found that, it is very much possible to execute a form without connecting to Database.
    Example:
    Step 1: Create a new form 'Form1'
    Step 2: Create a block 'Block1' and add button'But1'. Write a exit_form built-in on when-button-pressed trigger on 'But1' and compile it.
    Step 3: Create a on-logon trigger at form level and just give a message('on-logon');
    Step 4: Execute the form.
    The form executes perfectly without asking any connection to the database. On-Logon trigger initiates a logon process to non-oracle data source.
    Regards
    Thobula Rakesh
    Gati Intellect Systems Ltd

  • Using java mail api without servlets, I ve sent an html mail.  In that Ive

    Using java mail api without servlets, I ve sent an html mail. In that Ive specified action to the servlet. On click, it shows url as file:///C:/Documents%20and%20Settings/sirivanig/Local%20Settings/Temporary%20Internet%20Files/Content.IE5/CNFHMDIT/updatemailerform%5B2%5D.htm instead of www.servername.com/....
    May I know the reason why it shows like this.
    Do I ve to send htmlmail through servlet so that it does show proper url?

    Possibly your mailer is restricting your access to URLs to prevent
    various scams. Without the details, it's hard to know what's going
    wrong.
    Have you tried with a different mailer?

  • How to execute web applications without deploying them?

    How can I execute web applications without deploying them (without mentioning them in the server.xml)?
    I have an IWS 6.1 SP1 installed with default parameters (JES). I would like that a posix user could execute his own web application without administrator collaboration.
    Does it exist some sort of "autodeploy" like in tomcat?
    (I know about the invoker mapping in default-web.xml, just I don't realy understand what does it eventuate. I tried to unzip webapps-simple.war in the directory $IWS_SERVER_HOME/webapps/$instance_name/servlet/tmp/
    but the http://a.a.tg/servlet/tmp request failed:
    javax.servlet.ServletException: WEB2784: Wrapper cannot find servlet class tmp or a class it depends on
    ----- Root Cause -----
    java.lang.ClassNotFoundException: tmp
    How can I solve this? Users should have write permission to the directories in the classpath to put their servlet.class files into? Bad idea...
    (I tried to "execute" the $IWS_SERVER_HOME/plugins/java/samples/webapps/simple/webapps-simple.war)
    (Sorry for my language skills)

    Do as many of the rest of us do, until this behavior is changed (if ever). Eport your WEb gallery to your Hd and use an FTP client, there are so many, including Drreamweaver's, and Shareware ones, and upload just the relevant files/folders. Some can even check and do this for you.
    Don
    Don Ricklin, MacBook 1.83Ghz Duo 2 Core running 10.4.10 & Win XP, Pentax *ist D
    http://donricklin.blogspot.com/

Maybe you are looking for

  • Error while running a eBS webservice from the SoapUI Tool

    Hello All, I am trying to run PurchaseOrder Service webservice from the soap ui tool, In this service there are 6 methods are available and i am currently running the QueryPurchaseOrder method: Following is the soap message I am running: <soapenv:Env

  • Can I return my Ipod touch 4th generation and get an Ipad, if my Ipod is still under warranty?

    Can I return my Ipod touch 4th generation and get an Ipad 2, if my ipod is still under warranty?

  • Restriction of promotion attribute values

    Does anybody know how to restict the values of attributes for promotions. For example we want to enter a rabatt (save) for promotions and need the value for further calculations. How can I avoid the user enters 25 %, 25 or 0,25. Thanks in advance. Th

  • Return focus to spry tab

    Hi, I know this has been asked previously and I have gone thorugh the posts day after day trying to figure them but am having no luck at all. Would appreciate someone in the know looking at my code and pointing me in the right direction.. I have an a

  • Problem with ClassLoaders

    Hi, everyone. I'd be very gratefull for help on this. I have created a costum classLoader (with certain new security features). My problem is, if I use the costum classLoader to load, say, class A, all system classes loaded and used by class A are th