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,
EvanelaHi 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 youHi
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.
-exitsAfter 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
SarathHave 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
ChrisIf 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. -
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 asapYou 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
nullwhich 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 -
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_ZuHi
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.
-
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
-
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