MDME Java API - Page Problem

Hi,
I am using MDME Java API. I want to know how the multiple records running into several pages is handled. I know that there is a method SetSize() in ResultSetDefinition class and I also know that the method GetResultSet() uses the page(probably page number) as an argument. But, I am not sure how to use this feature for practical purposes.
Can anybody help me??
Thanks in Advance,
Rajani

Hi Rajani,
  The paging feature comes in handy if you have a very large dataset you need to iterate through. Using the page number and SetSize() method allows you to efficiently loop through the resultset. Here's some sample code:
// loop through the resultset, retrieving a page a time until all records have been processed
          while (isDone == false) {
               A2iResultSet rs = catalog.GetResultSet(search, rsd, sortField, sortAscending, page);
               // process the records
               processProdRecords(rs);
               // increment counter
               page++;
               // are there more records?
               if ((page * pageSize) >= search.GetNumSearchTableResults())
                    isDone = true;
Regards,
Oliver

Similar Messages

  • Problems with async callback with the BPEL Java API (Urgent- pls help)

    Hi,
    I have an async BPEL process and I invoke it form a JSP page using BPEL java API.
    I have followed the tutorials and docs at:
    $SOA_HOME/bpel\samples\tutorials\102.InvokingProcesses\rmi\com\otn\samples\async
    I can inititiate successfully the process, but when I try to get the result using getResult() or getField(String fieldName) methods I get the error:
    Oct 2, 2007 2:35:16 PM oracle.j2ee.rmi.RMIMessages EXCEPTION_ORIGINATES_FROM_THE_REMOTE_SERVER
    WARNING: Exception returned by remote server: {0}
    java.lang.ExceptionInInitializerError
         at java.lang.Class.forName0(Native Method)
         at java.lang.Class.forName(Class.java:242)
         at com.evermind.io.ClassLoaderObjectInputStream.resolveClass(ClassLoaderObjectInputStream.java:33)
         at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java:1538)
         at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java:1460)
         at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1693)
         at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1299)
         at java.io.ObjectInputStream.readObject(ObjectInputStream.java:339)
         at com.evermind.server.rmi.RMIClientConnection.handleMethodInvocationResponse(RMIClientConnection.java:856)
         at com.evermind.server.rmi.RMIClientConnection.handleOrmiCommandResponse(RMIClientConnection.java:287)
         at com.evermind.server.rmi.RMIClientConnection.dispatchResponse(RMIClientConnection.java:242)
         at com.evermind.server.rmi.RMIClientConnection.processReceivedCommand(RMIClientConnection.java:224)
         at com.evermind.server.rmi.RMIConnection.handleCommand(RMIConnection.java:152)
         at com.evermind.server.rmi.RMIConnection.listenForOrmiCommands(RMIConnection.java:127)
         at com.evermind.server.rmi.RMIConnection.run(RMIConnection.java:107)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:298)
         at java.lang.Thread.run(Thread.java:595)
    Caused by: java.util.MissingResourceException: Can't find bundle for base name com.collaxa.cube.i18n.exception_cube, locale en_US
         at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:836)
         at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:805)
         at java.util.ResourceBundle.getBundle(ResourceBundle.java:699)
         at com.collaxa.cube.CubeException.getResourceBundle(CubeException.java:142)
         at com.collaxa.cube.CubeException.<clinit>(CubeException.java:82)
         ... 17 more
    07/10/02 14:35:16 java.lang.ClassCastException: java.util.MissingResourceException
    07/10/02 14:35:16      at com.oracle.bpel.client.delivery.ext.async.thread.AsyncInstanceWatchdog.run(AsyncInstanceWatchdog.java:152)
    I check for the result only after I have checked that the instance is closed (completed or faulted) by using IInstanceHandle:getState() and InstanceHandle.STATE_CLOSED_COMPLETED, or IInstanceHandle.STATE_CLOSED_FAULTED
    I would like to add that so far I had no problems with invocation and geting result of sync BPEL processes. I do not what is missing for async processes.
    Any kind of help is appreciable.
    Thanks and best regards,
    Evanela

    Hi again,
    i managed to solve the problem:) Totally stupid.. the process variable name was not specified correctly..., but more stupid sounds the error message:))))
    Best Regards,
    Evanela

  • Problem displaying Arabic characters in PDF using Java APIs

    We are experiencing a problem when attempting to display Arabic characters within a PDF document using the Java APIs.
    The relevant Java code is as follows:
    RTFProcessor processor = new RTFProcessor("example.rtf" );
    processor.setOutput( “example.xsl” );
    processor.setExtractXLIFF(true);
    processor.process();
    ByteArrayOutputStream dataOut = new ByteArrayOutputStream();
    DataProcessor dataProcessor = new DataProcessor();
    dataProcessor.setDataTemplate( example.xdt" );
    if( parameterValues != null && parameterValues.length > 0 )
    setReportParameters( dataProcessor, parameterValues ); // method to set any report parameters from the parameterValues list.
    dataProcessor.setConnection( jdbcConnection );
    dataProcessor.setOutput(dataOut);
    dataProcessor.processData();
    FOProcessor foProcessor = new FOProcessor();
    foProcessor.setLocale( locale );
    foProcessor.setData( new ByteArrayInputStream( dataOut.toByteArray() ) );
    foProcessor.setTemplate( “example.xsl” );
    String xliffFileNameAndPath = getXLIFFFile( “example”, locale );
    if( xliffFileNameAndPath != null )
    foProcessor.setXLIFF( xliffFileNameAndPath );
    foProcessor.setOutput( "example.pdf" );
    foProcessor.setOutputFormat(
    outputFormat == PDF_FORMAT ? FOProcessor.FORMAT_PDF : FOProcessor.FORMAT_HTML );
    foProcessor.generate();
    The method getXLIFFFile( ) gets the relevant XLIFF file for the supplied report locale (if it exists) – the three test files that we used were Italian (example_it_IT.xlf), Spanish (example_es_ES.xlf) and Arabic (example_ar_AE.xlf).
    I imported the following JAR files from the XML Publisher release (version 5.6.2) into my Java application: collections.jar, i18nAPI_v3.jar, versioninfo.jar, xdocore.jar and xmlparserv2.jar.
    The output is OK for all three translations in HTML format, using a charset of UTF-8, and for Italian and Spanish in PDF format. However, the Arabic characters display as question marks in PDF format. The same issue occurs if I stream the output as a byte array straight to the HTTP response rather than save within a file.
    Note that the same RTF, XDT and XLIFF files produce the correct output in both HTML and PDF when executed within XMLPublisher.
    Thank you

    Hi
    I had a similar issue with arabic chars. With PDF layout, chars were appearing properly when preveiwd on local m/c, but as I implement file on server, it was displayed as ?????. I had raised a TAR 5798348.993 with oracle about this and they suggested to apply patch 4028294 Oracle Sourcing J Rollup and then patch 4182914. But later my users changed requirement and i cud not apply the patch to test if it works fine.
    But here, you have suggested that installing fonts would do. Is it really that simple? If yes, dont know what is that patch for which I was told to apply.
    Regards
    Varun

  • (how) can I access Java APIs from web-page-hosted JavaScript?

    Can I access Java APIs from a web-page via JavaScript if I have a JRE installed on the client machine? And if so, how?
    Thanks in advance for your time and consideration.

    John L. wrote:
    Can I access Java APIs from a web-page via JavaScript if I have a JRE installed on the client machine? And if so, how?As far as I can remember that was actually possible in the very first versions of Netscape because Netscape really wanted to pretend Javascript and Java were meant to be used together. But they soon removed that functionality. Can you guess why?
    Because people were using the File/IO classes to easily steal or remove files on the harddrive, among other such niceties. You do NOT want to have such control from a web application. People will abuse it.

  • Problems with 11g Global Schema / Java API Test Programs

    Hi,
    In the process of trying to get the 11g sample java api programs up and running, I've encountered a problem. Having installed without error the sample schemas for documentation and set up the 11g version of the test code, I get this error when I try to run BuildAW11g.java
    Created the AW GLOBAL_AWJ
    Identifier "GLOBAL.CHANNEL_DIM.TOTAL_ID" is invalid.
         at
    oracle.olapi.syntax.parser.IdentifierResolver.error(Unknown Source)
         at oracle.olapi.syntax.SyntaxObject.validate(Unknown Source)
         at oracle.olapi.syntax.SyntaxObject.fromSyntax(Unknown Source)
         at oracle.olapi.syntax.SyntaxObject.fromSyntax(Unknown Source)
         at oracle.olapi.syntax.SyntaxObject.fromSyntax(Unknown Source)
         at oracle.olapi.examples.metadata.BuildAW11g.createDimension(BuildAW11g.java:470)
         at oracle.olapi.examples.metadata.BuildAW11g.run(BuildAW11g.java:120)
         at oracle.olapi.examples.BaseExample11g.execute(BaseExample11g.java:54)
         at oracle.olapi.examples.BaseExample11g.execute(BaseExample11g.java:74)
         at oracle.olapi.examples.metadata.BuildAW11g.main(BuildAW11g.java:989)
    This seems to indicate that there is a problem with the sample schema - that GLOBAL.CHANNEL_DIM.TOTAL_ID doesn't exist. Is that right?
    On the topic of the sample schemas, a quick question. The install script runs without error so presumably the tables described in the readme had been installed, but I'm not sure. How can I verify this? When I connect as global using Oracle SQL Developer and expand 'Tables' in the right hand pane, I don't see any tables at all. I would have (perhaps naively) expected to see the tables listed in the samples schemas readme, eg, CHANNEL_DIM. Should I have? If not, how can I view these tables? Thanks in advance for any input anyone may have.
    -exits

    After a reboot the "DHCP-check" is passed:
    INFO: Checking DetectIfDHCPAssignedIP
         This is a prerequisite condition to test whether the primary IP address of the system is DHCP-assiged or static.
    INFO: Detecting the IP.....:192.168.1.4
    INFO: Checking the network interface display name.... :eth0
    INFO: Checking the network reference name..... :eth0
    INFO: Checking the platform .......46
    INFO: Checking the LINUX vendor .... :enterprise
    INFO: Inspect interface file :/etc/sysconfig/network-scripts/ifcfg-eth0
    INFO: Check complete. The overall result of this check is: Passed
    But net configuration assistant is still failing.

  • Problem while deploying WD +MDM7.1 thr java API

    Hi All,
             We are working with MDM 5.5 java API and building WD UI, everything was fine, but when we upgraded to MDM 7.1 we get this error: note when i tried to test the new Java API using java i dont see any problem,
    The initial exception that caused the request to fail, was:
       java.lang.ClassNotFoundException: com.sapportals.connector.connection.ConnectionFailedException -
    Loader Info -
    ClassLoader name: [com.flex.mdm.map/map_global_mfr_supp_cust] Living status: alive Direct parent loaders: [system:Frame] [service:servlet_jsp] [service:ejb] [service:sld] [library:tccmi] [sap.com/tcwdapi] [service:tcjesecurityapi] [library:tcjewebserviceslib] Resources: /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/com.flex.gbl.mdm.apidm_mdm_apiDM_API.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/com.flex.mdm.mapmap_global_mfr_supp_cust.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/mdm-admin.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/mdm-common.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/mdm-core.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/mdm-data.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/mdm-extension.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/mdm-protocol.jar /usr/sap/CED/J00/j2ee/cluster/apps/com.flex.mdm.map/map_global_mfr_supp_cust/servlet_jsp/webdynpro/resources/com.flex.mdm.map/map_global_mfr_supp_cust/root/WEB-INF/lib/mdm-publishing.jar -
        at com.sap.engine.boot.loader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:259)
        at com.sap.engine.boot.loader.MultiParentClassLoader.loadClass(MultiParentClassLoader.java:228)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:353)
        at com.sap.mdm.internal.session.JcaConnectionAccessor.reserveConnection(JcaConnectionAccessor.java:76)
        at com.sap.mdm.internal.session.JcaConnectionAccessor.reserveConnection(JcaConnectionAccessor.java:63)
        ... 116 more
    See full exception chain for details.

    Try restarting the portal if possible, otherwise restart the MDM Connector from Portal Visual Admin tool.
    Reason your log contains - " com.sap.mdm.internal.session.JcaConnectionAccessor.reserveConnection(JcaConnectionAccessor.java:76" which looks like connector issue.

  • URGENT:How can we submit a web page containing form using Java API?

    Dear Friends,
    I want to submit a form to a form action page resides in a web site. Then I need to get the response of the same.
    Is there any way to do this automatically by using Java API.
    Does java.net have anything?
    Thanks in advance
    Sarath

    Have you looked at a package called httpunit.
    http://httpunit.sourceforge.net/
    This allows form submission, Javascript, cookies etc.

  • Problem with creating customer account using TCA Java API

    Hi,
    I am trying to create customer account using TCA java API. i am getting exception saying PL/SQL numeric error: character to number conversion. but this error raises when calling API method
    HzCustAccountV2Pub.createCustAccount.
    can any body help me in solving this issue, any clue why this exception raises. i have tested even the code given in TCA API user guide. that code also gets same error.

    package client;
    import java.math.BigDecimal;
    import java.sql.Timestamp;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import oracle.jdbc.driver.OracleConnection;
    import oracle.jdbc.driver.OracleCallableStatement;
    import oracle.jdbc.driver.OracleTypes;
    import oracle.apps.ar.hz.v2api.HzCustAccountV2Pub;
    import oracle.apps.ar.hz.v2api.HzPartyV2Pub;
    import oracle.apps.ar.hz.v2api.HzCustomerProfileV2Pub;
    class CreateCustAccount {
         public static void main(String[] args) throws Exception {
         HzCustAccountV2Pub.CustAccountRec p_cust_account_rec = new HzCustAccountV2Pub.CustAccountRec();
         HzPartyV2Pub.PersonRec p_person_rec = new HzPartyV2Pub.PersonRec();
         HzCustomerProfileV2Pub.CustomerProfileRec p_customer_profile_rec = new      HzCustomerProfileV2Pub.CustomerProfileRec();
         BigDecimal[] x_cust_account_id = new BigDecimal[1];
         String[] x_account_number = new String[1];
         BigDecimal[] x_party_id = new BigDecimal[1];
         String[] x_party_number = new String[1];
         BigDecimal[] x_profile_id = new BigDecimal[1];
         String[] x_return_status = new String[1];
         BigDecimal[] x_msg_count = new BigDecimal[1];
         String[] x_msg_data = new String[1];
         try
         Class.forName ("oracle.jdbc.driver.OracleDriver");
         OracleConnection conn = (OracleConnection) DriverManager.getConnection ("jdbc:oracle:thin:@ebiztst.trianz.int:1526:PATCH","apps","apps");
         HzCustAccountV2Pub custaccountV2Pub = new HzCustAccountV2Pub();
         p_cust_account_rec.account_name = "John Ac";
         p_person_rec.person_first_name = "John";
         p_person_rec.person_last_name = "Smith";
         p_cust_account_rec.created_by_module = "TCA_EXAMPLE";
         HzCustAccountV2Pub.createCustAccount(
         conn
         , "T"
         , p_cust_account_rec
         , p_person_rec
         , p_customer_profile_rec
         , "F"
         , x_cust_account_id
         , x_account_number
         , x_party_id
         , x_party_number
         , x_profile_id
         , x_return_status
         , x_msg_count
         , x_msg_data
         System.out.println( "x_return_status = " + x_return_status[0] );
         System.out.println( "x_msg_count = " + x_msg_count[0] );
         System.out.println( "x_msg_data = " + x_msg_data[0]);
         if (x_msg_count[0].intValue() > 1) {
              OracleCallableStatement ocs = null;
              for (int i=0; i<x_msg_count[0].intValue(); i++) {
              ocs = (OracleCallableStatement)conn.prepareCall(
              "begin ? := fnd_msg_pub.get( p_encoded => ’F’ ); end;");
              ocs.registerOutParameter(1, OracleTypes.VARCHAR);
              ocs.execute();
              System.out.println((i + 1) + ". " + ocs.getString(1));
              conn.close();
              } catch (ClassNotFoundException e) {
              System.out.println("Driver Not Found: " + e);
              } catch (SQLException e) {
              System.out.println("SQL Error." + e);
    }

  • Problems adding WFS layer via Java API

    Hi
    I am trying to add a WFS layer to my map via the java api. There is little documentation on this and I am struggling a bit, I wonder if anyone has done the same? The call I am developing looks like:
    mapViewer.addWFSTheme("devprop",
    "WFS",
    "http://cjones:8080/geoserver/wfs?",
    "EPSG:27700",
    "ST_Building",
    "the_geom",
    "building",
    "ID",
    attributeList,
    renderStyleAttributes,
    featIds
    but the mapviewer log states:
    Jun 30, 2011 4:03:47 PM oracle.sdovis.util.WfsCapabilities readUsingHttpGet
    INFO: GetCapabilities request: http://cjones:8080/geoserver/wfs?VERSION=1.0.0&SERVICE=WFS&REQUEST=GetCapabilities
    Jun 30, 2011 4:03:47 PM oracle.sdovis.util.WfsCapabilities decodeCapabilities
    SEVERE: Decode GetCapabilities failed: null
    Jun 30, 2011 4:03:47 PM oracle.sdovis.theme.WFSThemeDefinition readCapabilities
    WARNING: Unable to get Capabilities for url: http://cjones:8080/geoserver/wfs?
    Jun 30, 2011 4:03:47 PM oracle.sdovis.DBMapMaker renderEm
    INFO: **** time spent on loading features: 172ms.
    Jun 30, 2011 4:03:47 PM oracle.sdovis.RenderingEngine prepareForRendering
    FINEST: xfm: 3.0236220472436512 0.0 0.0 -3.0236220472436512 -1047236.0393699252 532885.8661416543
    Jun 30, 2011 4:03:47 PM oracle.sdovis.VectorRenderer render
    FINER: time to render theme WFS with 0 styled features: 0ms
    Jun 30, 2011 4:03:47 PM oracle.sdovis.VectorRenderer label
    FINER: time to label theme WFS with 0 styled features: 0ms
    Jun 30, 2011 4:03:47 PM oracle.sdovis.DBMapMaker renderEm
    INFO: **** time spent on rendering: 0ms
    if I goto http://cjones:8080/geoserver/wfs?VERSION=1.0.0&SERVICE=WFS&REQUEST=GetCapabilities via the browser I get:
    <WFS_Capabilities version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wfs http://cjones:8080/geoserver/schemas/wfs/1.0.0/WFS-capabilities.xsd">
    +<Service></Service>
    +<Capability></Capability>
    +<FeatureTypeList></FeatureTypeList>
    +<ogc:Filter_Capabilities></ogc:Filter_Capabilities>
    </WFS_Capabilities>
    Any pointer appriciated
    Thanks
    Chris

    If the getcapabilities result is:
    <WFS_Capabilities version="1.0.0" xsi:schemaLocation="http://www.opengis.net/wfs http://cjones:8080/geoserver/schemas/wfs/1.0.0/WFS-capabilities.xsd">
    +<Service></Service>
    +<Capability></Capability>
    +<FeatureTypeList></FeatureTypeList>
    +<ogc:Filter_Capabilities></ogc:Filter_Capabilities>
    </WFS_Capabilities>
    then it's empty and there are no features to be served up.
    Test the WFS service in mapbuilder first.

  • Problem in using Java API

    While running the sample code of adding document in the home folder using java api.
    i am facing following propblem:-
    java.lang.NoClassDefFoundError: com/inprise/vbroker/CORBA/portable/Skeleton
    at
    oracle.ifs.beans.LibraryService.connectLocal(LibraryService.java:519)
    at oracle.ifs.beans.LibraryService.connect(LibraryService.java:377)
    at CreateDocument.Helloworld(CreateDocument.java:30)
    at CreateDocument.main(CreateDocument.java:58)
    com/
    pls suggest asap

    You must not have the complete IFS_BASE_CLASSPATH defined in your CLASSPATH environment variable. The easiest way to do this is to type ". ifsenv.sh" on Solaris (or run ifsenv.bat on NT). Then you can invoke java like this:
    java -classpath $CLASSPATH:$IFS_BASE_CLASSPATH ...
    (your standard JDK classes should already be in the CLASSPATH; append our classpath to it)

  • Java API's supported in the Jdeveloper, IAS, and RDBMS product components

    If there are any technical errors or "mistatement of the facts" in this posting, please let me know about them ..
    This article is being delivered in Draft form and may contain
    errors. Please use the MetaLink "Feedback" button to advise
    Oracle of any issues related to this article.
    PURPOSE
    This article describes the "Enterprise Java Beans" (EJB), "Java Server Pages"
    (JSP) and servlets Application Programming Interfaces (API) supported by the
    Oracle products, Jdeveloper, Internet Application Server (IAS) and the Oracle
    RDBMS release 2 and release 3, also known as Version 8.1.6 and 8.1.7,
    respectively.
    SCOPE & APPLICATION
    All parties interested in the Java API's supported by these products.
    Java API's supported in the Jdeveloper, IAS, and RDBMS product components
    JDEVELOPER
    JDEVELOPER is Oracle's Java development tool designed for coding / development,
    testing / debugging, and deployment of Java Applications to the IAS and
    RDBMS platforms.
    With the java software api's being in a constant state of evolution, each new
    release of Jdeveloper adds support for the "then current" version of the java
    software api's, if it does not already have it implemented.
    JDEVELOPER SERVLET API JSP API EJB API
    VERSION VERSION VERSION VERSION
    3.2.X.X 2.2 1.1 1.1
    3.1.X.X 2.1 1.0 1.0
    NOTE :
    Sun Microsystems and their advisory teams (Oracle is on it) is working on
    "draft" specifications for the next version of all of these API's
    EJB -------> http://java.sun.com/products/ejb/index.html
    JSP -------> http://java.sun.com/products/jsp/index.html
    Servlets --> http://java.sun.com/products/servlet/?frontpage-javaplatform
    It is anticipated that future releases of Jdeveloper will continue to be
    upgraded to include support for the next version of each api.
    To obtain the latest information on Oracle's Internet Development Suite (IDS)
    of tools, please review the "Internet Developer Suite" information located
    on Oracle's technet web site at :
    http://technet.oracle.com/products/index.htm
    IAS
    IAS is Oracle's next evolution of the web server and application server
    product technology superceeding the Web Application Server (WAS) and Oracle
    Application Server (OAS) product lines.
    IAS SERVLET API JSP API EJB API EJE VERSION
    VERSION VERSION VERSION VERSION SUPPORTED
    9I(1.0.2) 2.2 1.1 1.1 817
    8i(1.0.1-NT) 2.0 1.0 1.0 816
    8i(1.0.0-UNIX) 2.0 1.0 1.0 816
    The IAS product contains two Java Virtual Machines (JVM) within it's
    architecture.
    They are called :
    1) APACHE JSERV servlet engine
    2) ORACLE ENTERPRISE JAVA ENGINE (EJE)
    APACHE JSERV servlet engine
    The APACHE JSERV servlet engine is an EXISTING product licensed from the
    apache group which supports the servlet api 2.0.ONLY.
    The APACHE JSERV product does not support ANY JSP's unless the customer
    installs a third party jsp engine.
    The IAS 8i/9i which has the APACHE JSERV product embedded in it, comes with
    Oracle's JSP engine (OJSP) already integrated into it. OJSP supports JSP's up
    to the specific JSP engine version documented in the Oracle Universal
    Installer (OUI) for the 8.1.7 RDBMS or the IAS products. It is also documented
    in the product's release notes.
    Oracle ENTERPRISE JAVA ENGINE (EJE)
    The EJE formerly known as :
    1) Oracle 8i Java Virtual Machine (JVM)
    2) JSERVER component,
    3) Aurora JVM
    was originally releas ed in the RDBMS 8.1.5 database with jdk 1.1.6 based java
    support.
    The currently supported versions of the Oracle 8i RDBMS, versions 2 and 3,
    also known as Version 8.1.6 and 8.1.7, respectively, provides a jdk 1.2.1
    based java virtual machine support.
    "EJE" Version 816
    This EJE, found in rdbms 8.1.6 and IAS 8i, contains support for the ejb
    api 1.0, corba, and java stored procedures.
    "EJE" Version 817
    This EJE, found in rdbms 8.1.7 and IAS 9i, contains support for the ejb,
    corba, and java stored procedures as well as the Oracle Servlet Engine (OSE)
    which provides support for the servlets 2.2 api and JSP 1.1 api.
    Note :
    EJB support in the "EJE" Version 817 has been upgraded to comply with the EJB
    1.1 api specification which includes "entity beans" support.
    What is the bottom line ??
    1) Servlets deployed to the APACHE JSERV must comply with servlet api 2.0.
    2) Servlets 2.1 or higher are only supported in EJE's OSE component found in
    the rdbms 817 or ias 9i products. Servlets api 2.0 can also run in the OSE.
    References
    1) "Oracle9i Application Server Technical White Paper" located at :
    http://technet.oracle.com/products/ias/pdf/9ias_102.pdf
    2) "Whats New? Oracle8i JVM Accelerator, Oracle Servlet Engine, OracleJSP ..."
    located at :
    http://technet.oracle.com/products/oracle8i/pdf/504.pdf
    3) "Oracle8i Release 3 New Features Summary" located at :
    http://technet.oracle.com/products/oracle8i/pdf/8iR3_nfs.pdf
    null

    which jvm is used by jserv ?? EJE or a separate jdk ?
    The Jserv servlet engine is running in a separate jdk JVM external to the EJE jvm which is embedded within the "database" component of ias and the RDBMS.
    See the reference below for more details ...
    if jserv only support old apis, why it is in oracle's products ?
    i would assume that the oracle servlet engine was under development when ias 8i was released and became available in time for the ias 9i and rdbms 817 products.
    looking back in history leads me to believe ias 8i was a migration path to get to ias 9i or rdbms 817.
    Based upon the long history of new releases of every oracle product being upgraded with new features, it's reasonable to assume that these products will continue to evolve.
    when I deploy a jsp how to deploy in the right servlet container ("EJE") ?
    as documented in the reference below, you can deploy JSP's to either the apache jserv jvm or the EJE since the ORACLE JSP engine functionality is in both jvm's.
    there are many posts where you can see that people have deploy in jserv and they have problems because they don't use the right container (servlet 2.0 instead of
    servlet 2.2) http://technet.oracle.com:89/ubb/Forum2/HTML/006349.html
    when ias 8i came out this was clearly an issue since servlet support was at api 2.0, and the current servlet api was probably at 2.1.
    oracle clearly made every effort to get ias 9i released quickly to supply a servlet 2.1 and 2.2 capable engine to resolve this issue.
    since ias 9i and rdbms 8.1.7 are available this is no longer an issue.
    The reference below explains the architecture and understanding it would eliminate a lot of "deploy to the wrong ias 9i component" issues.
    so why jserv is bundled with oracle 8i/9ias since EJE support the right api version ?
    if in ias 9i release , oracle had removed the jserv component without any advance warning, many customers would have been very upset since oracle makes every attempt to give advance notice before removal of functionality.
    References
    1) "Oracle9i Application Server Technical White Paper" located at :
    http://technet.oracle.com/products/ias/pdf/9ias_102.pdf

  • Java Server Page

    Good Day, Gentleman and Ladies
    I need help in Java Server Pages (JSP)
    I using Weblogic 6.1 as Development Environment.
    Developing in Macromedia Dreamweaver 4.
    When I preview using Dreamweaver, It can be display properly.
    But when viewing in Internet Explorer, it give following error
    unreachable statement - out.print("\r\n\t\t\t
    uses or override a deprecated API.
    Following is the statement in JSP Code
    <input name="<%=ParamName%>" type="text" value="" size="8">
                                  <a href = "javascript:show_calendar('parameterInputForm.<%=ParamName%>');"><img src="images/toolbar/calendar.gif" border=0 alt="Click to see calendar" align="abmiddle"></a>
    Could any kind souls please help me in it.
    Thank you very much, your help is deeply appreciated
    Luo_Sha_Zong_Zu

    Hi
    First, dont put msg with subjects like "Java Server Page". Put msg with subject showing the problem, like "unreachable statement - out.print("\r\n\t\t\t uses or override a deprecated API"
    Your problem is with the value of the var "ParamName". It has something with "return" and "tab". Check it

  • Can I create a cert with the Java API only?

    I'm building a client/server app that will use SSL and client certs for authenticating the client to the server. I'd like for each user to be able to create a keypair and an associated self-signed cert that they can provide to the server through some other means, to be included in the server's trust store.
    I know how to generate a key pair with an associated self-signed cert via keytool, but I'd prefer to do it directly with the Java APIs. From looking at the Javadocs, I can see how to generate a keypair and how to generate a cert object using an encoded representation of the cert ( e.g. java.security.cert.CertificateFactory.generateCertififcate() ).
    But how can I create this encoded representation of the certificate that I need to provide to generateCertificate()? I could do it with keytool and export the cert to a file, but is there no Java API that can accomplish the same thing?
    I want to avoid having the user use keytool. Perhaps I can execute the appropriate keytool command from the java code, using Runtime.exec(), but again a pure java API approach would be better. Is there a way to do this all with Java? If not, is executing keytool via Runtime.exec() the best approach?

    There is no solution available with the JDK. It's rather deficient wrt certificate management, as java.security.cert.CertificateFactory is a factory that only deals in re-treads. That is, it doesn't really create certs. Rather it converts a DER encoded byte stream into a Java Certificate object.
    I found two ways to create a certificate from scratch. The first one is an all Java implementation of what keytool does. The second is to use Runtime.exec(), which you don't want to do.
    1. Use BouncyCastle, a free open source cryptography library that you can find here: http://www.bouncycastle.org/ There are examples in the documentation that show you how to do just about anything you want to do. I chose not to use it, because my need was satisfied with a lighter approach, and I didn't want to add a dependency unnecessarily. Also Bouncy Castle requires you to use a distinct version with each version of the JDK. So if I wanted my app to work with JDK 1.4 or later, I would have to actually create three different versions, each bundled with the version of BouncyCastle that matches the version of the target JDK.
    2. I created my cert by using Runtime.exec() to invoke the keytool program, which you say you don't want to do. This seemed like a hack to me, so I tried to avoid it; but actually I think it was the better choice for me, and I've been happy with how it works. It may have some backward compatibility issues. I tested it on Windows XP and Mac 10.4.9 with JDK 1.6. Some keytool arguments changed with JDK versions, but I think they maintained backward compatibility. I haven't checked it, and I don't know if I'm using the later or earlier version of the keytool arguments.
    Here's my code.
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.security.KeyStore;
    import java.security.KeyStoreException;
    import java.security.NoSuchAlgorithmException;
    import java.security.cert.CertificateException;
    import javax.security.auth.x500.X500Principal;
    import javax.swing.JOptionPane;
    public class CreateCertDemo {
         private static void createKey() throws IOException,
          KeyStoreException, NoSuchAlgorithmException, CertificateException{
         X500Principal principal;
         String storeName = ".keystore";
         String alias = "keyAlias";
         principal = PrincipalInfo.getInstance().getPrincipal();
         String validity = "10000";
         String[] cmd = new String[]{ "keytool", "-genKey", "-alias", alias, "-keyalg", "RSA",
            "-sigalg", "SHA256WithRSA", "-dname", principal.getName(), "-validity",
            validity, "-keypass", "keyPassword", "-keystore",
            storeName, "-storepass", "storePassword"};
         int result = doExecCommand(cmd);
         if (result != 0){
              String msg = "An error occured while trying to generate\n" +
                                  "the private key. The error code returned by\n" +
                                  "the keytool command was " + result + ".";
              JOptionPane.showMessageDialog(null, msg, "Key Generation Error", JOptionPane.WARNING_MESSAGE);
         KeyStore ks = KeyStore.getInstance(KeyStore.getDefaultType());
         ks.load(new FileInputStream(storeName), "storePassword".toCharArray());
            //return ks from the method if needed
    public static int doExecCommand(String[] cmd) throws IOException{
              Runtime r = Runtime.getRuntime();
              Process p = null;
              p = r.exec(cmd);
              FileOutputStream outFos = null;
              FileOutputStream errFos = null;
              File out = new File("keytool_exe.out");
              out.createNewFile();
              File err = new File("keytool_exe.err");
              err.createNewFile();
              outFos = new FileOutputStream(out);
              errFos = new FileOutputStream(err);
              StreamSink outSink = new StreamSink(p.getInputStream(),"Output", outFos );
              StreamSink errSink = new StreamSink(p.getErrorStream(),"Error", errFos );
              outSink.start();
              errSink.start();
              int exitVal = 0;;
              try {
                   exitVal = p.waitFor();
              } catch (InterruptedException e) {
                   return -100;
              System.out.println (exitVal==0 ?  "certificate created" :
                   "A problem occured during certificate creation");
              outFos.flush();
              outFos.close();
              errFos.flush();
              errFos.close();
              out.delete();
              err.delete();
              return exitVal;
         public static void main (String[] args) throws
              KeyStoreException, NoSuchAlgorithmException, CertificateException, IOException{
              createKey();
    import java.io.BufferedReader;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.InputStreamReader;
    import java.io.OutputStream;
    import java.io.PrintWriter;
    //Adapted from Mike Daconta's StreamGobbler at
    //http://www.javaworld.com/javaworld/jw-12-2000/jw-1229-traps.html?page=4
    public class StreamSink extends Thread
        InputStream is;
        String type;
        OutputStream os;
        public StreamSink(InputStream is, String type)
            this(is, type, null);
        public StreamSink(InputStream is, String type, OutputStream redirect)
            this.is = is;
            this.type = type;
            this.os = redirect;
        public void run()
            try
                PrintWriter pw = null;
                if (os != null)
                    pw = new PrintWriter(os);
                InputStreamReader isr = new InputStreamReader(is);
                BufferedReader br = new BufferedReader(isr);
                String line=null;
                while ( (line = br.readLine()) != null)
                    if (pw != null)
                        pw.println(line);
                    System.out.println(type + ">" + line);   
                if (pw != null)
                    pw.flush();
            } catch (IOException ioe)
                ioe.printStackTrace(); 
    import java.io.File;
    import java.io.FileInputStream;
    import java.io.FileNotFoundException;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import javax.security.auth.x500.X500Principal;
    public class PrincipalInfo {
         private static String defInfoString = "CN=Name, O=Organization";
         //make it a singleton.
         private static class PrincipalInfoHolder{
              private static PrincipalInfo instance = new PrincipalInfo();
         public static PrincipalInfo getInstance(){
              return PrincipalInfoHolder.instance;
         private PrincipalInfo(){
         public X500Principal getPrincipal(){
              String fileName = "principal.der";
              File file = new File(fileName);
              if (file.exists()){
                   try {
                        return new X500Principal(new FileInputStream(file));
                   } catch (FileNotFoundException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                        return null;
              }else{
                   return new X500Principal(defInfoString);
         public void savePrincipal(X500Principal p) throws IOException{
              FileOutputStream fos = new FileOutputStream("principal.der");
              fos.write(p.getEncoded());
              fos.close();
    }Message was edited by:
    MidnightJava
    Message was edited by:
    MidnightJava

  • Java API - Urgent!!!!

    Expensive Friends,
    I am with some problems in the development of a solution to capture native events of a cellular telephone... Would like that somebody me of this a light, or same indicated a full bibliography (sites, books, codes of example) for use of a API in Java that can make called the telephony functions the cellular one, as to capture events of beginning and end of calls, events of reception of calls, capture of mobile contacts, etc....Eu knows that some devices GSM use the Symbian, but I would like to know exactly I have possibilities of J2ME MIDP 1,0 (and posterior) and CLDC 1,0 (and posterior) to work direct with them without that he needs to program direct in the Symbian.

    Hello
    We have read installation guide "SAP Netweaver MDM 5.5 SP05", page 22, we want install MDM Connector and MDM Java API, in "installation procedure", it is indicate
    1. Extract the files from the archives.
    The javadoc folders contain an HTMLbased
    collection of documents that
    describe the Java API. Make sure you
    retain the directory structure.
    2. Deploy the SDA files on Web AS
    Java using the Software Deployment
    Manager (SDM). MDM Connector uses
    the mdm4j library as a shared library to
    support generic connection.
    3. Store the JAR files at the standard
    location for the application that uses
    them.
    4. Include the path to the JAR files in
    the class path for the application that
    uses them. This may be an
    environment variable, a command line
    argument, or an application
    configuration parameter.
    Only we are clear point 2, but rest, we are not sure, please could you clear us it ???
    Thanks

  • Java API: repository.login error

    I MDM guru,
    i habe the "little" problem with JAVA API SP2.
    I have do the followings step:
    - download last JAVA API from  service.sap.com/swdc:
       Support Packages and Patches->SAP NetWeaver->SAP MDM->SAP MDM 5.5->JAVA API
    - download  "MDM Java API Samples Framework"
    - downloadn MDM_API_SAMPLES repository (import ad load it in the MDM server)
    When run Application.java (with program = KeyMappingProgram.RETRIEVE) when exextute this line
    repository.login(region, user, password);
    i have this error
    com.sap.mdm.commands.CommandException: com.sap.mdm.internal.protocol.manual.ServerException: Dati non convalidati da verifica CRC
         at com.sap.mdm.commands.AuthenticateRepositorySessionCommand.execute(AuthenticateRepositorySessionCommand.java:94)
         at com.sap.nw.mdm.rig.server.SessionImpl.authenticateRepositorySession(SessionImpl.java:136)
         at com.sap.nw.mdm.rig.server.SessionImpl.<init>(SessionImpl.java:37)
         at com.sap.nw.mdm.rig.server.RepositoryImpl.login(RepositoryImpl.java:61)
         at com.sap.nw.mdm.rig.Application.start(Application.java:208)
         at com.sap.nw.mdm.rig.Application.main(Application.java:157)
    Caused by: com.sap.mdm.internal.protocol.manual.ServerException: Dati non convalidati da verifica CRC
         at com.sap.mdm.internal.protocol.manual.AbstractProtocolCommand.execute(AbstractProtocolCommand.java:112)
         at com.sap.mdm.commands.AuthenticateRepositorySessionCommand.execute(AuthenticateRepositorySessionCommand.java:88)
         ... 5 more
    com.sap.mdm.commands.CommandException: com.sap.mdm.internal.protocol.manual.ServerException: Dati non convalidati da verifica CRC
         at com.sap.mdm.commands.AuthenticateUserSessionCommand.execute(AuthenticateUserSessionCommand.java:84)
         at com.sap.nw.mdm.rig.server.SessionImpl.authenticateUserSession(SessionImpl.java:87)
         at com.sap.nw.mdm.rig.server.SessionImpl.<init>(SessionImpl.java:41)
         at com.sap.nw.mdm.rig.server.RepositoryImpl.login(RepositoryImpl.java:61)
         at com.sap.nw.mdm.rig.Application.start(Application.java:208)
         at com.sap.nw.mdm.rig.Application.main(Application.java:157)
    Caused by: com.sap.mdm.internal.protocol.manual.ServerException: Dati non convalidati da verifica CRC
         at com.sap.mdm.internal.protocol.manual.AbstractProtocolCommand.execute(AbstractProtocolCommand.java:112)
         at com.sap.mdm.commands.AuthenticateUserSessionCommand.execute(AuthenticateUserSessionCommand.java:79)
         ... 5 more
    Where is the problem?
    This is my configuration:
    MDM Server 5.5
    - mds Version 5.5.61.48 Built on 2008-Jan-12
       Client Interface Version 5.5.61.12
       Console Interface Version 5.5.61.06
       Web Interface Version 5.5.61.12
    mdm-core.jar:
        Build Version 5.5.62.83
    Public Interface Version 5.5.62.00 [Interface CRC=0xab59b8dc]
    Console Interface Version 5.5.62.01 [Interface CRC=0xf3c104b6]
        Web Interface Version 5.5.62.06 [Interface CRC=0x86541e49]

    well i got this error while creating a repository session. but the crc is for version mismatch as said in the previous post.
    Check the following wiki for details on the error
    https://www.sdn.sap.com/irj/sdn/wiki?path=/pages/viewpage.action?pageId=4119
    I got this error when i moved my EP Server to MDM Java 602 and my MDM server was at 5.5
    Then i moved by EP server back to 5.5 and resolved the issue.
    I hope this will help.

Maybe you are looking for

  • Buttons enabling and disabling

    Hello, I'm developing a web based project based on JSP 1.2, MySQL and TOMCAT with Java2 SDK these days. So,now I had a question reguarding user authentication.I want to do this. I have a login form to log into the system by providing his username and

  • HT201274 Facetime is still not working even after restore and all other troubleshooting is performed

    Tried restoring and all other troubleshooting and still cannot obtain Facetime on my phone - have others had this problem and if so how di you resolve the problem?  Please help.

  • How to build a JNI App

    I couldn't find this anywhere so here you go... Sun you let me down on this one but overall you are very good. 1. compile your java class, Test.java -> Test.class 2. use javah.exe (should come with jdk) to create the h file --> $javah.exe Test.class

  • How to upgrade from 10.3.9 for 8GB IPOD Nano(requires mac OSX v 10.4.11 or

    I want to download itunes onto my new ipodnano 8 GB.I have 10.3.9 and how do I upgrade to the best version for this? It is frustrating to have to keep paying.

  • Language Pack Install issue?

    I currently have a system with 1 single LP installed. That system is patched with both March Upadte(kb2767999) and the December 2013 CU I am looking to upgrade to SP1 and Sept 2014 CU. When I tru to install SP1 for the LP, I get the message to Repair