Java API 1.7 Released - getSite() fix, XSD 1.1 support

I have released a new version of the iTunesU Web Services API for Java, version 1.7. This release supports version 1.1 of the XSD, including the new UpdateGroup web service method, the ExternalFeed entity type, and the ExternalFeed, GroupType and AllowSubscription attributes for Groups.
This release includes a fix for the getSite() method, which broke due to a change in the behavior of the URL-based ShowTree method (/API/ShowTree/). It used to return an XML document with a Site element as its root; it now returns an ITunesUResponse.
The latest jar is available here:
http://code.google.com/p/itunesu-api-java/downloads/detail?name=itunesu-api-java -1.7.jar
The latest JavaDocs, including docs for the new ExternalFeed class, can be found here:
http://itunesu-api-java.googlecode.com/svn/trunk/doc/index.html
If you are experiencing problems with getSite(), I would like to hear if this release resolves those problems for you, or if you have further issues. I also recommend against using getSite() if you can avoid it, since it downloads the entire site tree into memory. Using getSiteMinimal() followed by getCourse(), getSection(), etc. will be much faster and use much less memory.
Thanks,
Dave

I noticed there were issues with setting permissions. I read the discussion posts on that, but I didn't see any notice of the problem being solved.
I'm getting an error when I try to set the permission for a course.
[org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content starting with element 'Permission'. The content must match '(("":Name){0-1},("":ShortName){0-1},("":Identifier){0-1},("":Instructor){0-1}, ("":Description){0-1},("":Group){0-UNBOUNDED},("":AllowSubscription){0-1},("":Th emeHandle){0-1},("":Permission){0-1})'.]
edu.asu.itunesu.ITunesUException: [org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content starting with element 'Permission'. The content must match '(("":Name){0-1},("":ShortName){0-1},("":Identifier){0-1},("":Instructor){0-1}, ("":Description){0-1},("":Group){0-UNBOUNDED},("":AllowSubscription){0-1},("":Th emeHandle){0-1},("":Permission){0-1})'.]
at edu.asu.itunesu.ITunesUConnection.send(ITunesUConnection.java:1007)
at edu.asu.itunesu.ITunesUConnection.addCourse(ITunesUConnection.java:560)
nextCourse.setName(courseTitle);
nextCourse.setShortName(courseTitle);
nextCourse.setIdentifier(courseId);
nextCourse.setPermissions(sectionPermission);
LinkedList crsTab = new LinkedList();
Group tab1 = new Group();
tab1.setName("Tab 1");
crsTab.addFirst(tab1);
nextCourse.setGroups(crsTab);
ITunesUResponse addCrs_resp = ituneConn.addCourse(sectionHandle, courseTemplateHandle, nextCourse);
successful = addCrs_resp.getAddedObjectHandle();
I never had this issue before, so I'm wondering what's causing it.
I'm currently using the 1.7 release of the Java API.

Similar Messages

  • Oracle Spatial 10g R2 Java API

    Hi All,
    I have a JAVA tool said to be written for Oracle Spatial 10g R2 Java API which uses for example the class oracle.spatial.georaster.JGeoRaster. I have to port it to 11g R2. The tool is definitely written for an earlier version, because compilation fails on for example JGeoRaster.getProperties() method which is not present in the new API. For this new API I have a fine Javadoc documentation here:
    http://download-llnw.oracle.com/docs/html/E11829_01/
    I have searched for a similar one for 10g R2 but found only like
    http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14373/toc.htm
    which misses the oracle.spatial.georaster package. Is there such a package and if so, where can I find docs for it?
    thank you in advance, best regards: Balázs Bámer

    Hi Balázs,
    the GeoRaster Java API was first released with 11gR2. Your first link points to that, or this link:
    http://download.oracle.com/docs/cd/E11882_01/appdev.112/e11829/toc.htm
    your second link points to 10g Oracle Spatial Java API, which doesn't include any GeoRaster related API. your tool might have been developed based on the old INTERNAL georaster jar file, which is not supposed to be used by your java program. But if you do want the api doc, you can run javadoc or jdeveloper to find out the api from the old sdogr.jar file.
    jeffrey

  • Bug report (and solution): adding multiple records through Java API in bulk

    I have found some bugs in the Java API (version 4.1.25) that makes it impossible to add mulitple values in bulk to a RECNO database. The fixes are as follows:
    MultipleEntry.java, line 80:
    "DbUtil.int2array(curr_off, this.data, pos);"
    should be replaced by
    " DbUtil.int2array(recno, this.data, pos);"
    MultipleRecnoDatabaseEntry.java, line 130:
    "return append_internal(data, doff, dlen, recno);"
    should be replaced by
    "return append_internal(data, offset, len, recno);"
    Regards,
    Johan Walters

    Hello,
    It looks like there were some corrections to this area in the post 4.1 i.e. 4.2 release. And I do not see these same issues in the current 5.1.25 release. If you do find them in the current release, just let us know.
    Thanks,
    Sandra

  • Java API Update - All new API functions added

    I have released Version 1.1 of the iTunesU Web Services API for Java, which includes all of the new API functions documented in the request XSD announced in yesterday's update. These include:
    - mergeSite()
    - addDivision()
    - deleteDivision()
    - mergeDivision()
    - addSection()
    - deleteSection()
    - mergeSection()
    - addCredential()
    - deleteCredential()
    The project page is here:
    http://code.google.com/p/itunesu-api-java/
    The full list of supported functions can be browsed online:
    http://itunesu-api-java.googlecode.com/svn/trunk/doc/edu/asu/itunesu/ITunesUConn ection.html
    Thanks, and please let me know of any issues you encounter.
    Dave Benjamin, ASU

    This looks like a bug in SP4 Patch 3.
    Calendar calendar = Calendar.getInstance();
    DateTimeValue dateTimeValue = new DateTimeValue(calendar);
    While debugging I get these values..
    calendar.getTime()
          (java.util.Date) Wed Apr 18 <b>13:41:13</b> CDT 2007
    dateTimeValue.toString()
          (java.lang.String) 04/18/2007 <b>01:41:13</b>
    Please open a OSS message.

  • Unable to run the 9.3 JAVA API in "embedded" mode without APS installed

    <p>Hello,</p><p> </p><p>I'm trying to run the 9.3 JAVA API in "embedded" modewithout APS installed.</p><p> </p><p>I first used build Build <b>242</b> which was supplied with 9.3beta. This worked great and exactly the way I wanted to.</p><p>Now I'm trying to do the same with the production release of 9.3JAPI which is (to my knowledge) build <b>305</b>. With build 305I'm not able to connect to Essbase without APS installed.</p><p> </p><p>The reason I do not want to install APS is because I'm runningthe Java code from with an Oracle database (the JAPI jars areloaded into the database)</p><p> </p><p>Please see below loglines (running the sampleConnect.class):</p><p> </p><p><span style=" text-decoration: underline;"><b>Build 242 (whichworks ok)</b></span></p><p>Java(TM) 2 Runtime Environment, Standard Edition (build1.4.2_06-b03)<br>Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)<br>WARN [main]: - Time: Mon Feb 12 08:53:24 CET 2007, AnalyticProvider Services - Release 9.3.0.0 Build 242<br>Copyright (c) 1991-2006 Hyperion Solutions Corporation. All rightsreserved.<br>connection mode : EMBEDDED<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007, connection mode: EMBEDDED<br>essbase.properties: essbase.properties<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007,essbase.properties: essbase.properties<br>domain.db location: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007, domain.dblocation: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007,cluster.monitor.interval : 30</p><p>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: sign on (from user Administrator session number 5178)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: get my analytics mode (from user Administrator sessionnumber 5178)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: (from user '**aps_profile is Enabled**' session numberfalse)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: connect to olap service (from user Administrator sessionnumber 5178)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: (from user '**aps_profile is Enabled**' session numberfalse)<br>Connection to Analyic server '10.130.60.78' was successful.<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: sign off (from user Administrator session number 5178)<br>Process exited with exit code 0.<br></p><p> </p><p><span style=" text-decoration: underline;"><b>Build 305 (whichdoes not work ok)</b></span></p><p>Java(TM) 2 Runtime Environment, Standard Edition (build1.4.2_06-b03)<br>Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007, AnalyticProvider Services - Release 9.3.0.0 Build 305<br>Copyright (c) 1991-2006 Hyperion Solutions Corporation. All rightsreserved.<br>connection mode : EMBEDDED<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007, connection mode: EMBEDDED<br>essbase.properties: essbase.properties<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007,essbase.properties: essbase.properties<br>domain.db location: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007, domain.dblocation: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007,cluster.monitor.interval : 30</p><p>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: sign on (from user Administrator session number 68529)<br>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: get my analytics mode (from user Administrator sessionnumber 68529)<br>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: connect to olap service (from user Administrator sessionnumber 68529)<br>Error: Cannot connect to olap service. null<br>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: sign off (from user Administrator session number68529)<br>Process exited with exit code 1.</p>

    <p>Hello,</p><p> </p><p>I'm trying to run the 9.3 JAVA API in "embedded" modewithout APS installed.</p><p> </p><p>I first used build Build <b>242</b> which was supplied with 9.3beta. This worked great and exactly the way I wanted to.</p><p>Now I'm trying to do the same with the production release of 9.3JAPI which is (to my knowledge) build <b>305</b>. With build 305I'm not able to connect to Essbase without APS installed.</p><p> </p><p>The reason I do not want to install APS is because I'm runningthe Java code from with an Oracle database (the JAPI jars areloaded into the database)</p><p> </p><p>Please see below loglines (running the sampleConnect.class):</p><p> </p><p><span style=" text-decoration: underline;"><b>Build 242 (whichworks ok)</b></span></p><p>Java(TM) 2 Runtime Environment, Standard Edition (build1.4.2_06-b03)<br>Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)<br>WARN [main]: - Time: Mon Feb 12 08:53:24 CET 2007, AnalyticProvider Services - Release 9.3.0.0 Build 242<br>Copyright (c) 1991-2006 Hyperion Solutions Corporation. All rightsreserved.<br>connection mode : EMBEDDED<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007, connection mode: EMBEDDED<br>essbase.properties: essbase.properties<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007,essbase.properties: essbase.properties<br>domain.db location: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007, domain.dblocation: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:53:25 CET 2007,cluster.monitor.interval : 30</p><p>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: sign on (from user Administrator session number 5178)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: get my analytics mode (from user Administrator sessionnumber 5178)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: (from user '**aps_profile is Enabled**' session numberfalse)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: connect to olap service (from user Administrator sessionnumber 5178)<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: (from user '**aps_profile is Enabled**' session numberfalse)<br>Connection to Analyic server '10.130.60.78' was successful.<br>INFO [main]: - Time: Mon Feb 12 08:53:25 CET 2007,<br>[Mon Feb 12 08:53:25 CET 2007] - Service using EMBEDDED<br>Request: sign off (from user Administrator session number 5178)<br>Process exited with exit code 0.<br></p><p> </p><p><span style=" text-decoration: underline;"><b>Build 305 (whichdoes not work ok)</b></span></p><p>Java(TM) 2 Runtime Environment, Standard Edition (build1.4.2_06-b03)<br>Java HotSpot(TM) Client VM (build 1.4.2_06-b03, mixed mode)<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007, AnalyticProvider Services - Release 9.3.0.0 Build 305<br>Copyright (c) 1991-2006 Hyperion Solutions Corporation. All rightsreserved.<br>connection mode : EMBEDDED<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007, connection mode: EMBEDDED<br>essbase.properties: essbase.properties<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007,essbase.properties: essbase.properties<br>domain.db location: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007, domain.dblocation: ./domain.db<br>WARN [main]: - Time: Mon Feb 12 08:54:28 CET 2007,cluster.monitor.interval : 30</p><p>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: sign on (from user Administrator session number 68529)<br>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: get my analytics mode (from user Administrator sessionnumber 68529)<br>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: connect to olap service (from user Administrator sessionnumber 68529)<br>Error: Cannot connect to olap service. null<br>INFO [main]: - Time: Mon Feb 12 08:54:28 CET 2007,<br>[Mon Feb 12 08:54:28 CET 2007] - Service using EMBEDDED<br>Request: sign off (from user Administrator session number68529)<br>Process exited with exit code 1.</p>

  • Invalid Argument Exception on Java API's DB Close

    When closing the database via the Java API's close method, I am getting an invalid argument exception... how can this be fixed... subsequent access to the DB causes the JVM to crash??
    ERROR: An exception has occurred: java.lang.IllegalArgumentException: Invalid argument
    java.lang.IllegalArgumentException: Invalid argument
    at com.sleepycat.db.internal.db_javaJNI.DbEnv_close0(Native Method)
    at com.sleepycat.db.internal.DbEnv.close0(DbEnv.java:217)
    at com.sleepycat.db.internal.DbEnv.close(DbEnv.java:77)
    at com.sleepycat.db.Environment.close(Environment.java:39)
    at com.sleepycat.dbxml.XmlManager.closeInternal(XmlManager.java:301)
    at com.sleepycat.dbxml.XmlManager.delete(XmlManager.java:33)
    at com.sleepycat.dbxml.XmlManager.close(XmlManager.java:310)
    at com.iconnect.data.adapters.BerkleyXMLDBImpl.insert(BerkleyXMLDBImpl.java:827)
    at com.iconnect.data.DataManagerFactory.insert(DataManagerFactory.java:182)
    at Xindice2Berkley.main(Xindice2Berkley.java:99)

    I had the same problem. I could fix it by carefully calling the delete() function on all those DBXML Xml..xyz objects that you create when you perform queries etc. It seems that those Java objects have some 'shadow' object in the underlying DLL and by calling delete() you free resources that remain otherwise assigned (maybe somebody with a C++ background who programmed this stuff?). Call delete() before the Java object gets out of scope. For instance:
    results = mgr.query(collection,context,null);
    XmlValue value;
    try {
    while ((value = results.next()) != null) {
    XmlValue c = value.getFirstChild();
    String ref = c.getNodeValue();
    c.delete(); c = null;
    value.delete(); value = null;
    catch (Exception e) {
    finally {
    if (results != null) {
    results.delete();
    results = null;
    Once i did this on all possible dbxml objects i used in my code, the java.lang.IllegalArgumentException: Invalid argument disappeared.
    Message was edited by:
    user562374

  • 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 API for running entire ".sql" files on a remote DB ( mySQL or Oracle)?

    Hi,
    Would anyone happen to know if there's a java API for executing entire ".sql" files (containing several different SQL commands), on a remote database server ?
    It's enough if the API works with MySQL and/or Oracle.
    Just to demonstrate what i'm looking for:
    Suppose you've created sql file "c:/test.sql" with several script lines:
    -- test.sql:
    insert into TABLE1 values(3,3);
    insert into TABLE1 values(5,5);
    create table TABLE2 (name VARCHER) ENGINE innoDB; -- MYSQL specific
    Then the java API should look something like:
    // Dummy java code:
    String driver="com.mysql.jdbc.Driver";
    String url= "jdbc:mysql://localhost:3306/myDb";
    SomeAPI.executeScriptFile( "c:/test.sql", driver, url);
    Thanks.

    No such a API, but it's easy to parse all sqls in a file, then run those command:
    For instance:
    import java.sql.*;
    import java.util.Properties;
    /* A demo show how to load some sql statements. */
    public class testSQL {
    private final static Object[] getSQLStatements(java.util.Vector v) {
    Object[] statements = new Object[v.size()];
    Object temp;
    for (int i = 0; i < v.size(); i++) {
    temp = v.elementAt(i);
    if (temp instanceof java.util.Vector)
    statements[i] = getSQLStatements( (java.util.Vector) temp);
    else
    statements[i] = temp;
    return statements;
    public final static Object[] getSQLStatements(String sqlFile) throws java.
    io.IOException {
    java.util.Vector v = new java.util.Vector(1000);
    try {
    java.io.BufferedReader br = new java.io.BufferedReader(new java.io.
    FileReader(sqlFile));
    java.util.Vector batchs = new java.util.Vector(10);
    String temp;
    while ( (temp = br.readLine()) != null) {
    temp = temp.trim();
    if (temp.length() == 0)
    continue;
    switch (temp.charAt(0)) {
    case '*':
    case '"':
    case '\'':
    // System.out.println(temp);
    break; //Ignore any line which begin with the above character
    case '#': //Used to begin a new sql statement
    if (batchs.size() > 0) {
    v.addElement(getSQLStatements(batchs));
    batchs.removeAllElements();
    break;
    case 'S':
    case 's':
    case '?':
    if (batchs.size() > 0) {
    v.addElement(getSQLStatements(batchs));
    batchs.removeAllElements();
    v.addElement(temp);
    break;
    case '!': //Use it to get a large number of simple update statements
    if (batchs.size() > 0) {
    v.addElement(getSQLStatements(batchs));
    batchs.removeAllElements();
    String part1 = temp.substring(1);
    String part2 = br.readLine();
    for (int i = -2890; i < 1388; i += 39)
    batchs.addElement(part1 + i + part2);
    for (int i = 1890; i < 2388; i += 53) {
    batchs.addElement(part1 + i + part2);
    batchs.addElement(part1 + i + part2);
    for (int i = 4320; i > 4268; i--) {
    batchs.addElement(part1 + i + part2);
    batchs.addElement(part1 + i + part2);
    for (int i = 9389; i > 7388; i -= 83)
    batchs.addElement(part1 + i + part2);
    v.addElement(getSQLStatements(batchs));
    batchs.removeAllElements();
    break;
    default:
    batchs.addElement(temp);
    break;
    if (batchs.size() > 0) {
    v.addElement(getSQLStatements(batchs));
    batchs.removeAllElements();
    br.close();
    br = null;
    catch (java.io.FileNotFoundException fnfe) {
    v.addElement(sqlFile); //sqlFile is a sql command, not a file Name
    Object[] statements = new Object[v.size()];
    for (int i = 0; i < v.size(); i++)
    statements[i] = v.elementAt(i);
    return statements;
    public static void main(String argv[]) {
    try {
    String url;
    Object[] statements;
    switch (argv.length) {
    case 0: //Use it for the simplest test
    case 1:
    url = "jdbc:dbf:/.";
    if (argv.length == 0) {
    statements = new String[1];
    statements[0] = "select * from test";
    else
    statements = argv;
    break;
    case 2:
    url = argv[0];
    statements = getSQLStatements(argv[1]);
    break;
    default:
    throw new Exception(
    "Syntax Error: java testSQL url sqlfile");
    Class.forName("com.hxtt.sql.dbf.DBFDriver").newInstance();
    //Please see Connecting to the Database section of Chapter 2. Installation in Development Document
    Properties properties = new Properties();
    Connection con = DriverManager.getConnection(url, properties);
    Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
    ResultSet.CONCUR_READ_ONLY);
    //Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
    // stmt.setMaxRows(0);
    stmt.setFetchSize(10);
    final boolean serializeFlag = false;//A test switch to serialize/deserialize the resultSet
    ResultSet rs;
    for (int i = 0; i < statements.length; i++) {
    if (statements[i] instanceof java.lang.String) {
    String temp = (java.lang.String) statements;
    switch (temp.charAt(0)) {
    case 'S':
    case 's':
    case '?':
    System.out.println(temp);
    rs = stmt.executeQuery(temp);
    if (serializeFlag) {
    // serialize the resultSet
    try {
    java.io.FileOutputStream fileOutputStream = new
    java.io.FileOutputStream("testrs.tmp");
    java.io.ObjectOutputStream
    objectOutputStream = new java.io.
    ObjectOutputStream(fileOutputStream);
    objectOutputStream.writeObject(rs);
    objectOutputStream.flush();
    objectOutputStream.close();
    fileOutputStream.close();
    catch (Exception e) {
    System.out.println(e);
    e.printStackTrace();
    System.exit(1);
    rs.close(); //Let the CONCUR_UPDATABLE resultSet release its open files at once.
    rs = null;
    // deserialize the resultSet
    try {
    java.io.FileInputStream fileInputStream = new
    java.io.FileInputStream("testrs.tmp");
    java.io.ObjectInputStream objectInputStream = new
    java.io.ObjectInputStream(
    fileInputStream);
    rs = (ResultSet) objectInputStream.
    readObject();
    objectInputStream.close();
    fileInputStream.close();
    catch (Exception e) {
    System.out.println(e);
    e.printStackTrace();
    System.exit(1);
    ResultSetMetaData resultSetMetaData = rs.
    getMetaData();
    int iNumCols = resultSetMetaData.getColumnCount();
    for (int j = 1; j <= iNumCols; j++) {
    // System.out.println(resultSetMetaData.getColumnName(j));
    /* System.out.println(resultSetMetaData.getColumnType(j));
    System.out.println(resultSetMetaData.getColumnDisplaySize(j));
    System.out.println(resultSetMetaData.getPrecision(j));
    System.out.println(resultSetMetaData.getScale(j));
    System.out.println(resultSetMetaData.
    getColumnLabel(j)
    + " " +
    resultSetMetaData.getColumnTypeName(j));
    Object colval;
    rs.beforeFirst();
    long ncount = 0;
    while (rs.next()) {
    // System.out.print(rs.rowDeleted()+" ");
    ncount++;
    for (int j = 1; j <= iNumCols; j++) {
    colval = rs.getObject(j);
    System.out.print(colval + " ");
    System.out.println();
    rs.close(); //Let the resultSet release its open tables at once.
    rs = null;
    System.out.println(
    "The total row number of resultset: " + ncount);
    System.out.println();
    break;
    default:
    int updateCount = stmt.executeUpdate(temp);
    System.out.println(temp + " : " + updateCount);
    System.out.println();
    else if (statements[i] instanceof java.lang.Object[]) {
    int[] updateCounts;
    Object[] temp = (java.lang.Object[]) statements[i];
    try {
    for (int j = 0; j < temp.length; j++){
    System.out.println( temp[j]);
    stmt.addBatch( (java.lang.String) temp[j]);
    updateCounts = stmt.executeBatch();
    for (int j = 0; j < temp.length; j++)
    System.out.println((j+1)+":"+temp[j]);
    for (int j = 0; j < updateCounts.length; j++)
    System.out.println((j+1)+":" +updateCounts[j]);
    catch (java.sql.BatchUpdateException e) {
    updateCounts = e.getUpdateCounts();
    for (int j = 0; j < updateCounts.length; j++)
    System.out.println((j+1)+":"+updateCounts[j]);
    java.sql.SQLException sqle = e;
    do {
    System.out.println(sqle.getMessage());
    System.out.println("Error Code:" +
    sqle.getErrorCode());
    System.out.println("SQL State:" + sqle.getSQLState());
    sqle.printStackTrace();
    while ( (sqle = sqle.getNextException()) != null);
    catch (java.sql.SQLException sqle) {
    do {
    System.out.println(sqle.getMessage());
    System.out.println("Error Code:" +
    sqle.getErrorCode());
    System.out.println("SQL State:" + sqle.getSQLState());
    sqle.printStackTrace();
    while ( (sqle = sqle.getNextException()) != null);
    stmt.clearBatch();
    System.out.println();
    stmt.close();
    con.close();
    catch (SQLException sqle) {
    do {
    System.out.println(sqle.getMessage());
    System.out.println("Error Code:" + sqle.getErrorCode());
    System.out.println("SQL State:" + sqle.getSQLState());
    sqle.printStackTrace();
    while ( (sqle = sqle.getNextException()) != null);
    catch (Exception e) {
    System.out.println(e.getMessage());
    e.printStackTrace();

  • Can't display a Tile Layer using JAVA API V2 (based on HTML5)

    Hi Experts,
    I am trying to display a tile layer using JAVA API V2 but i get the below error and nothing shows after that.
    MAPVIEWER-05501: Map tile layer not found. Check map tile layer name and/or data source name.
    Source: OM.layer.Tilelayer.getTileLayerConfig
    *[mvdemo.demo_map]*
    I tried with chrome and firefox browsers which supports HTML5 but same issue. Here is the html code i am using
    <html>
    <head>
    <title></title>
    <meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
    <script type='text/javascript' src='http://localhost:8282/mapviewer/jslib/v2/oraclemapsv2.js'></script>
    <style type= 'text/css '>body {cursor:default;}</style>
    <script language="JavaScript" type="text/javascript">
    function showMap()
    var baseURL = "http://"+document.location.host+"/mapviewer";
    var mapCenterLon = -122.45;
    var mapCenterLat = 37.6706;
    var mapZoom = 4;
    var mpoint = new OM.geometry.Point(mapCenterLon,mapCenterLat,8307);
    var map = new OM.Map(
    document.getElementById('map'),
    mapviewerURL: baseURL
    var tileLayer = new OM.layer.TileLayer(
    "baseMap",
    dataSource:"mvdemo",
    tileLayer:"demo_map",
    tileServerURL:baseURL+"/mcserver"
    map.addLayer(tileLayer) ;
    navigationPanelBar=new OM.control.NavigationPanelBar();
    map.addMapDecoration(navigationPanelBar);
    map.setMapCenter(mpoint);
    map.setMapZoomLevel(mapZoom) ;
    map.init() ;
    </script>
    </head>
    </html>
    Note: inside the body on load i use DIV Id = Map (i skipped that one line of code because it stops rest of the line from displaying in the thread)
    However, I am successful in using the same tile Layer with JAVA API V1
    Please share your thoughts as what could be the fix
    Thanks
    Nag

    Nag,
    inside the body on load i use DIV Id = Map (i skipped that one line of code because it stops rest of the line from displaying in the thread)please surround your code with [ c o d e ] [ / c o d e ] (without the spaces).
    Secondly: this is probably more appropriate for the {forum:id=727} forum.
    Regards,
    Stefan

  • Using the Data Engine Java API

    I try to use the Data Engine Java API to generate an XML document from database data.
    So as mentioned in the documentation Business Intelligence Publisher User's Guide Release 10.1.3.2 (page 4-26 to 4-27)
    a) I created a java class (using Jdev Version 11.1.1.0.0)
    package oracle.apps.XMLPublisher.client;
    import com.sun.java.util.collections.Hashtable;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import oracle.apps.xdo.XDOException;
    import oracle.apps.xdo.dataengine.DataProcessor;
    public class XMLFileGenerator {
    public XMLFileGenerator() {
    public static void dataEngine() throws ClassNotFoundException, Exception {
    XMLFileGenerator xMLFileGenerator = new XMLFileGenerator();
    try {
    //Initialization instantiate the DataProcessor class//
    DataProcessor dataProcessor;
    dataProcessor = new DataProcessor();
    //Set Data Template to be executed
    dataProcessor.setDataTemplate("PERFRBS.xml");
    Hashtable parameters;
    parameters = new Hashtable();
    parameters.put("P_LEGAL_ENTITY_ID", "3259");
    parameters.put("P_TRU_ID", "3262");
    parameters.put("P_YEAR", "2009");
    dataProcessor.setParameters(parameters);
    // Now set the jdbc connection to the database that you
    // wish to execute the template against.
    // This sample assumes you have already created
    // the connection object 'jdbcConnection'
    Class.forName("oracle.jdbc.OracleDriver");
    String url =
    "jdbc:oracle:thin:@ap6005sdb.us.oracle.com:1526:hremeadv";
    Connection jdbcConnection;
    jdbcConnection= DriverManager.getConnection(url, "apps", "*****");
    dataProcessor.setConnection(jdbcConnection);
    System.out.println("Here1");
    // Specify the output directory and file for the data file
    dataProcessor.setOutput("BilanSocial.xml");
    System.out.println("Here2");
    dataProcessor.processData();
    System.out.println("Here3");
    } catch (SQLException e) {
    System.out.println("SQLException " + e.getMessage());
    } catch (XDOException e) {
    System.out.println("XDOException" + e.getMessage());
    public static void main(String[] argv) throws ClassNotFoundException,
    Exception {
    XMLFileGenerator xmlPublisher = new XMLFileGenerator();
    XMLFileGenerator.dataEngine();
    b) to generate my xml file based on the following data template
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <dataTemplate name="PERFRBS" defaultPackage="" version="1.0">
    <parameters>
    <parameter name="P_LEGAL_ENTITY_ID" dataType = "number"></parameter>
    <parameter name="P_TRU_ID" dataType = "number"></parameter>
    <parameter name="P_YEAR" dataType = "number"></parameter>
    </parameters>
    <lexicals>
    </lexicals>
    <dataQuery>
    <sqlStatement name="Q_INDICATORS">
    <![CDATA[ SELECT pai.action_information3   YEAR,
                    pai.action_information17  INDICATOR_VALUE
              FROM   pay_action_information pai 
             WHERE  pai.action_information_category     = 'HR_FR_BS'
                AND    pai.action_context_type             = 'PA'
                AND    pai.action_information1             = :P_LEGAL_ENTITY_ID
                AND    pai.action_information2             = :P_TRU_ID
                AND    pai.action_information3            = :P_YEAR       
    ]]>
    </sqlStatement>
    </dataQuery>
    <dataStructure>
    <group name="G_YEARS" dataType="varchar2" source="Q_INDICATORS">
    <element name="YEAR" dataType="varchar2" value="YEAR"/>
    <element name="INDICATOR_VALUE" dataType="number" value="INDICATOR_VALUE"/>
    </group>
    </dataStructure>
    </dataTemplate>
    ---> But when I run it , it fails when calling the data processor with the following error
    D:\Jdeveloper11g\jdk\bin\javaw.exe -client -classpath "D:\Jdeveloper11g\jdevhome\XMLPublisher\src\Client\classes;D:\BI publisher\XMLP562_WIN\XMLP562_WIN\manual\lib\versioninfo.jar;D:\BI publisher\XMLP562_WIN\XMLP562_WIN\manual\lib\xdocore.jar;D:\BI publisher\XMLP562_WIN\XMLP562_WIN\manual\lib\collections.jar;D:\BI publisher\XMLP562_WIN\XMLP562_WIN\manual\lib\xmlparserv2-904.jar;D:\BI publisher\XMLP562_WIN\XMLP562_WIN\manual\lib\i18nAPI_v3.jar;D:\Jdeveloper11g\jdbc\lib\ojdbc14dms.jar;D:\Jdeveloper11g\jlib\orai18n.jar;D:\Jdeveloper11g\diagnostics\lib\ojdl.jar;D:\Jdeveloper11g\jlib\dms.jar" -Dhttp.proxyHost=emeacache.uk.oracle.com -Dhttp.proxyPort=80 -Dhttp.nonProxyHosts= -Dhttps.proxyHost=emeacache.uk.oracle.com -Dhttps.proxyPort=80 -Dhttps.nonProxyHosts= oracle.apps.XMLPublisher.client.XMLFileGenerator
    Here1
    Here2
    Exception in thread "main" java.lang.IllegalAccessError: tried to access class oracle.jdbc.driver.OracleStatement from class oracle.apps.xdo.dataengine.DBConnection
         at oracle.apps.xdo.dataengine.DBConnection.setRowPrefetchSize(DBConnection.java:42)
         at oracle.apps.xdo.dataengine.XMLPGEN.setRowPrefetchSize(XMLPGEN.java:1224)
         at oracle.apps.xdo.dataengine.XMLPGEN.writeData(XMLPGEN.java:420)
         at oracle.apps.xdo.dataengine.XMLPGEN.writeGroupStructure(XMLPGEN.java:281)
         at oracle.apps.xdo.dataengine.XMLPGEN.processData(XMLPGEN.java:251)
         at oracle.apps.xdo.dataengine.XMLPGEN.processXML(XMLPGEN.java:192)
         at oracle.apps.xdo.dataengine.XMLPGEN.writeXML(XMLPGEN.java:222)
         at oracle.apps.xdo.dataengine.DataProcessor.processData(DataProcessor.java:334)
         at oracle.apps.XMLPublisher.client.XMLFileGenerator.dataEngine(XMLFileGenerator.java:50)
         at oracle.apps.XMLPublisher.client.XMLFileGenerator.main(XMLFileGenerator.java:62)
    Process exited with exit code 1.
    Thanks by advance for your help

    Make sure you have the Oracle JDBC library setup in project parties and it's setup to export. The api's are fine. Have you looked at the BIPublisherIDE I wrote. All this code is already written for you. There is a manual on the site as well
    http://bipublisher.blogspot.com/2008/03/bi-publisher-bipublisheride.html
    Ike Wiggins
    http://bipublisher.blogspot.com

  • 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

  • Help with Essbase 9 and the Java API

    Hi, I am trying to connect to Essbase from a Java desktop application and I am unable to do so. I need to know if I am in principle doing the right things and if I have the correct environment set up.
    We have a server with Essbase version 9.3.1. We normally use essbase via the Excel Addin, and I have already written Excel applications that utilise both the addin and the Essbase VB API. Now I need to connect to Essbase but from outside Excel and using the Java API. I have no idea what APS is nor does my Essbase Administrator.
    My application has the following code (adapted from a post in this forum) -
    public static void main(String[] args) {
    String s_userName = "user";
    String s_password = "password";
    String s_olapSvrName = "ustca111";
    String s_provider = "http://localhost:13080/aps/JAPI";
    try{
    IEssbase ess = IEssbase.Home.create(IEssbase.JAPI_VERSION);
    IEssDomain dom = ess.signOn(s_userName, s_password, false, null, s_provider);
    IEssOlapServer olapSvr = dom.getOlapServer(s_olapSvrName);
    olapSvr.connect();
    System.out.println("Connection to Analyic server '" + olapSvr.getName() + "' was successful.");
    olapSvr.disconnect();
    }catch(EssException exp){
    System.out.println(exp.getMessage());
    I am running my application on my computer, not on the Essbase server, and the username I am using is the same one I use (as a user of Essbase) via the Essbase Addin in Excel, not an admin login.
    When I run the app I get:
    "Cannot connect to Provider Server.Make sure the signon parameters are correct and the Provider Server is running."
    Please can you confirm:
    1) Do I need an admin login for my client application to connect to the Essbase server or can I use a normal read-access login, like the one I use in Excel?
    2) Is the provider always the same regardless of the computer, i.e. "http://localhost:13080/aps/JAPI"; How do I know what this has to be? Where do I get this information from?
    3) How can I make sure that the Server is running the necessary "Provider Server", is this just a service that will show on services.msc of the server? What should I ask the Essbase Administrator for him to tell me what I need?
    Thank you very much.
    Leo

    Tim, when I look in my computer's Essbase installation path I can only find the following jar files (from the ones you have listed).
    C:\Hyperion\AnalyticServices\JavaAPI\external\css\log4j-1.2.8.jar
    C:\Hyperion\AnalyticServices\JavaAPI\lib\ess_es_server.jar
    C:\Hyperion\AnalyticServices\JavaAPI\lib\ess_japi.jar
    I do not have css-9_3_1.jar or interop-sdk.jar.
    In order to try the embedded mode, I added the three jars I have to the classpath, and have re-built and ran with "embedded" as the provider. This is what I got in my output screen:
    run:
    Error accessing the properties file. essbase.properties: essbase.properties (The system cannot find the file specified). Using default values.
    Hyperion Provider Services - Release 9.3.1.0.0 Build 168
    Copyright (c) 1991, 2007 Oracle and / or its affiliates. All rights reserved.
    connection mode : EMBEDDED
    essbase.properties: essbase.properties
    domain.db location: domain.db
    console log enable : false
    file log enable : false
    logRequest : false
    logLevel : ERROR
    java System properties -DESS_ES_HOME: null
    Scenario Markets Total Legal Entities Products
    Jan Feb Mar
    Standard Units 1.053264054859E7 1.60849856762E7 2.6234553348270003E7
    BUILD SUCCESSFUL (total time: 2 seconds)
    As you can see, this has worked (as I get the data I was looking for at the end), but when I had the url in the provider string, I just get the below, without the initial errors:
    run:
    Scenario Markets Total Legal Entities Products
    Jan Feb Mar
    Standard Units 1.053264054859E7 1.60849856762E7 2.6234553348270003E7
    BUILD SUCCESSFUL (total time: 2 seconds)
    Now that I can get both modes to work I intend to write a Windows application, place it in a shared drive, and allow multiple users to use it. Which mode should I use?
    By the way, I found the essbase.properties file in C:\Hyperion\AnalyticServices\JavaAPI\bin, but when I add it to my app and test it in embedded mode, I get even more errors, but it still gives me the result...output below:
    run:
    java.io.FileNotFoundException: ..\bin\apsserver.log (The system cannot find the path specified)
    at java.io.FileOutputStream.openAppend(Native Method)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:177)
    at java.io.FileOutputStream.<init>(FileOutputStream.java:102)
    at org.apache.log4j.FileAppender.setFile(FileAppender.java:272)
    at org.apache.log4j.RollingFileAppender.setFile(RollingFileAppender.java:156)
    at org.apache.log4j.FileAppender.<init>(FileAppender.java:96)
    at org.apache.log4j.RollingFileAppender.<init>(RollingFileAppender.java:60)
    at com.hyperion.dsf.server.framework.BaseLogger.addAppender(Unknown Source)
    at com.hyperion.dsf.server.framework.BaseLogger.setFileLogEnable(Unknown Source)
    at com.hyperion.dsf.server.framework.DsfLoggingService.sm_initialize(Unknown Source)
    at com.essbase.server.framework.EssOrbPluginDirect.setupLoggingService(Unknown Source)
    at com.essbase.server.framework.EssServerFramework.<init>(Unknown Source)
    at com.essbase.api.session.EssOrbPluginEmbedded.<init>(Unknown Source)
    at com.essbase.api.session.EssOrbPlugin.createPlugin(Unknown Source)
    at com.essbase.api.session.Essbase.signOn(Unknown Source)
    Hyperion Provider Services - Release 9.3.1.0.0 Build 168
    at com.essbase.api.session.Essbase.signOn_internal(Unknown Source)
    at com.essbase.api.session.Essbase.signOn(Unknown Source)
    at esstest.Main.main(Main.java:22)
    Copyright (c) 1991, 2007 Oracle and / or its affiliates. All rights reserved.
    connection mode : EMBEDDED
    log4j:WARN No appenders could be found for logger (com.hyperion.dsf.server.framework.BaseLogger).
    essbase.properties: essbase.properties
    log4j:WARN Please initialize the log4j system properly.
    domain.db location: ./data/domain.db
    console log enable : false
    file log enable : true
    logFileName : ../bin/apsserver.log
    logRequest : false
    logLevel : WARN
    java System properties -DESS_ES_HOME: null
    Scenario Markets Total Legal Entities Products
    Jan Feb Mar
    Standard Units 1.053264054859E7 1.60849856762E7 2.6234553348270003E7
    BUILD SUCCESSFUL (total time: 3 seconds)
    Thank you
    Leo

  • Human Task Java API

    Hi
    I have a requirement to create human tasks without using soa. I am trying to use the Human task Java API. Using this API I can do all the operations like updating the outcome, adding/updating comments and updating assignee list but not able to create initial task. I am using initiateTask operation which requires task definition id. I dont know how to set this. Can anybody guide me
    1. Can I create human tasks without using composite pure java api?
    2. If I am able to create initial task what will be the task definition id? I tried to enter a new row in soa infra meta data table which did not work.
    I really appreciate the help.
    Thanks

    Hi Sri
    I have few Processes deployed to my SOA Domain and that too under different Partitions. For ease of maintenance, in EM Console under soa_infra node instead of default partition we can have our own Partitions also to deploy specific workflow projects under those partitions. If you don't have this thats ok.
    I looked at Payload data for all the Tasks submitted by the first Initiator Task in EM Console, when we check the Flow Trace etc. Here is what I found for <taskDefinitionId> value for each of my different Processes. They do have some Pattern. So you had to use some sort of properties file to get these values so that if they are deployed to different partitions and with different versions, you do not have to modify your java code and recompile it. Just modify .properties file.
    Anyhow, looks like the format for <taskDefinitionId> is something like this:
    NameOfPartition + "/" + NameOfProcess + "!" + VersionNumber + "/" + NameOfInitiatorHumanTask
    Here are some examples from my domain for some of the Process.
    <taskDefinitionId>default/SalesQuoteProcess!1.0/EnterQuote</taskDefinitionId>
    <taskDefinitionId>Ravi1_Partition/CreditReviewRequestProcess!1.0/HumanTaskCreditRequestor1</taskDefinitionId>
    <taskDefinitionId>Jegga1_Partition/HolidayProcess!1.0/StartNewHolidayTask</taskDefinitionId>
    You already tried hardcoding it I guess and it worked. Now try generating them dynamically using simple String appenders and sort of properties file to make it more dynamic. How often do we really change partition name or human task name itself or name of process itself. They are pretty much fixed. Now comes only the Version number. This can change with your new deployment if you want to have different version. So just read all these from .properties file.
    Thanks
    Ravi Jegga

  • Java.lang.SecurityException when trying to execute Workflow-Java-API from Servlet

    I'm trying to call some of the Oracle Workflow-Java-API Classes/Methods from a servlet running on OC4J.
    The following Code-Sample is exactly copied from the WFTest Example shipped with Oracle-Workflow:
    wfDB = new WFDB(user, ident, "jdbc:oracle:thin:@", "host:1521:tnsstring");
    String charset = System.getProperty("CHARSET");
    if (charset == null) {
    charset = "UTF8";
    ctx = new WFContext(wfDB, charset);
    if (ctx.getDB().getConnection() == null) {
    throw new Exception ("Keine Verbindung zum Workflow");
    On OC4J integrated in JDeveloper everything works fine when i run my test-servlet with this code.
    On 9ias with OC4J running on a SuSE-Linux Server i get the following Error:
    java.lang.SecurityException: class "oracle.apps.fnd.wf.WFContext"'s signer information does not match signer information of other classes in the same package
    at java.lang.ClassLoader.checkCerts(ClassLoader.java:554)
    at java.lang.ClassLoader.defineClass(ClassLoader.java:482)
    at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:106)
    at java.net.URLClassLoader.defineClass(URLClassLoader.java:243)
    at java.net.URLClassLoader.access$100(URLClassLoader.java:51)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:190)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:183)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:250)
    at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:310)
    at oracle.apps.fnd.wf.engine.JdbcEngineAPI._sqlQueryText(JdbcEngineAPI.java)
    at oracle.apps.fnd.wf.engine.EngineAPI.getItemTypes(EngineAPI.java)
    at WorkflowData.doGet(WorkflowData.java:61)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:195)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:309)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:336)
    at com.evermind[Oracle9iAS (1.0.2.2.1) Containers for J2EE].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:508)
    at com.evermind[Oracle9iAS (1.0.2.2.1) Containers for J2EE].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:177)
    at com.evermind[Oracle9iAS (1.0.2.2.1) Containers for J2EE].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:576)
    at com.evermind[Oracle9iAS (1.0.2.2.1) Containers for J2EE].server.http.HttpRequestHandler.run(HttpRequestHandler.java:189)
    at com.evermind[Oracle9iAS (1.0.2.2.1) Containers for J2EE].util.ThreadPoolThread.run(ThreadPoolThread.java:62)
    As you can see, the first Workflow-API-Object (WFDB) gets correctly instantiated. But the second one crashes.
    The java.policy and java.security files are exactly identical on both machines, my PC and the Linux-Server.
    Where might be the problem ?
    How can we fix this ?
    thanks in advance for any help
    Ralf

    okay, okay,
    my/our own fault.
    To prevent anyone else of makeing the same mistake, a short decription:
    We stored the wf????.jar files inside the $JAVA_HOME/jre/lib/ext directory.
    The correct way is to let them inside $ORACLE_HOME/jlib dir of the oracle db and extend the classpath, respectively add the following lines to 'orion-application.xml' of the app.
         <library path="$ORACLE_HOME/jlib/wfapi.jar" />
         <library path="$ORACLE_HOME/jlib/wfjava.jar" />

  • GWT meets  Flex:  Java API  for Flex

    Hello people,
    I m  somedays away to release the  version 2.1 of gwt4air. gwt4air is an open source project  based on  gwt (http://code.google.com/webtoolkit/)  and provides a Java API to different platform where Java is not the primary language.
    Version 2.0 added among other features  support for Adobe AIR, Alive PDF, Pure PDF, Aswing and other GWT based  UI libraries like  EXT-GWT
    With version 2.1  i added support for Flex(AIR and Browser). The goal of this approach is to make it easy for Java Developers to switch  to Flex be leveraging  a swing like API. But also to  present an alternative to the classical Flex developement. The overall idea behind this is described here:
    http://code.google.com/p/gwt4air/wiki/Beginn
    A demo application ca be found here: http://gwt4air.appspot.com/
    The application contains around 100 demos with source code illustrating the use of the api.
    I ve tried to keep the API similar to the AS3 api  so one could easely  switch from AS3 to Java and vice versa
    Note that this  flex applicaton is entirely written in Java using gwt4air. No AS3 no MXML.
    The application is still in alpha stage so please expect some errors.
    The project home is located at:
    http://code.google.com/p/gwt4air/
    I m looking forward to hear what you think about this idea. Any inputs (good or bad)  is really welcome
    Help me make this an even better tool.
    It s about time that  Flex rocks the GWT world
    cheers,
    Alain

    It looks like those genius @google are also thinking about a Java(GWT) API for Flash .
    http://www.youtube.com/watch?v=F_sbusEUz5w&t=1718
    Glad to see  that i m not a fool
    Or alteast not the only fool that believe  combining  Java and Flash/Flex is a potent mix.

Maybe you are looking for

  • DB Connection in Oracle Self Service Modules

    Hi, I have one question about oracle Self Service modules. I am using Oracle Ebusiness Suite 11.5.10 on Oracle 10g database. What database user it connects to when we login to Oracle Apps Self service modules? Assuming that its 'APPS' db user, can I

  • Download updates to mac

    my computer will not download updates to firefox, keeps asking when i say update it just loads and never stops

  • Turn red LED light off

    Is there an option or registry edit that will turn off the red led light that dots the "i" in ThinkPad on the top of the laptop? I have a SL500.

  • Mac Pro takes few minutes to shutdown

    since a long time,my mac pro takes a few minutes to shutdown after using the shutdown-menu. is there anyone, who has the same problem and knows a solution? bst rgds from germany!

  • License check errors

    I have just purchased Photoshop Touch through Google Play store. When I try to run it I get an error message saying license check failed and to sign in to Google play but if the problem persists to contact Adobe. Any ideas what the problem is?