ALDSP - Oracle Reports - Data Service Integrator

Hi There,
I'd like to use data from DSP in a report I am creating with Oracle Reports (10g). I tried to use web services as my data source but realized that this is not supported by Oracle. I would like to use JDBC or ODBC-JDBC bridge to get data, but the documentation that I've come across specifically refer to Crystal Reports, Business Objects, etc. but not to Oracle Reports. Do you know how I could use DSP from Oracle Reports? Is this supported by BEA/Oracle? Some of the data source types that I can use with Oracle Reports are: SQL Query, JDBC Query, and XML Query.
Thanks.
Azeem. 

ALDSP ships with a JDBC driver that you will find in <bea-home>/<aldsp-home>/lib/ldjdbc.jar. Using it also requires <bea-home>/<wl-server>/server/lib/weblogic.jar - please see edocs for aldsp as I'm sure I'll miss something.
The driver is com.bea.dsp.jdbc.driver.DSPJDBCDriver
the url is of the form : jdbc:dsp#localhost:7001/<dataspaceName>
and use a username/password that are valid for the domain.
In your ALDSP dataspace in Workspace Studio, right-click -> Add SQL Map
You can map (expose) public ALDSP functions from physical or logical data services to SQL tables, stored procedures and functions. You can map ALDSP functions without arguments to tables (makes sense, right?) and ALDSP functions with arguments as stored procedures. And you can map ALDSP functions which expose rdb functions as functions (seems overly restrictive - hopefully you don't need that).
Before you get to running your reports - you really need to check the query plans for the queries you want to run (or that your reporting tool wants to run). In Workshop Studio, open any data service, go to the Plan tab, and select <Ad hoc SQL> from the drop-down, and enter the sql that will be executed. If the plan looks like it is going to do more work than you need - you have some work to do. http://e-docs.bea.com/aldsp/docs30/datasrvc/Query%20Plan%20Overview.html gives an overview of the query plan. http://e-docs.bea.com/aldsp/docs32/dsp32wiki/Best%20Practices%20When%20Building%20Data%20Services.html has some optimization tips, but is geared mostly to xqueries (not sql). 

Hi Mike,
Thank you so much for your reply. I've spent some time trying to connect to DSP from Oracle Reports and have still not been able to do so.
1. I added the ldjdbc.jar and weblogic.jar to my Report Classpath and to my Oracle Report Configuration file. I added a configuration for the DSP Driver and can see this in the drop down when I try to make a JDBC connection from Oracle Reports, however once I enter my connection information (username, password, database, driver type) Oracle Reports does not do anything (it neither connects nor gives me an error message). I tried to add a typo in the Database URL to make sure it was trying to connect and ge an error message with the typo, but nothing with the correct url. I'm not sure if I should give up trying to connect to DSP from Oracle Reports. I had also contacted Oracle Support for Oracle Reports for help, but they said that they do not support 3rd party drivers. Could you think of some things I could try to help me resolve this?
2. I started getting the following message when I try to deploy a DSP project (I could do so successfully until yesterday). Do you why this is occurring?
java.lang.RuntimeException: The JMX ObjectName that is being proxied has been unregistered: com.bea.dsp:Name=DomainServiceMBean,DspType=com.bea.dsp.management.DomainServiceMBean
     at weblogic.management.jmx.ExceptionMapper.matchJMXException(ExceptionMapper.java:80)
     at weblogic.management.jmx.MBeanServerInvocationHandler.doInvoke(MBeanServerInvocationHandler.java:547)
     at weblogic.management.jmx.MBeanServerInvocationHandler.invoke(MBeanServerInvocationHandler.java:380)
     at $Proxy0.listDeploymentSessionNames(Unknown Source)
     at com.bea.dsp.ide.common.server.services.DeploymentSvc.performDeploy(DeploymentSvc.java:869)
     at com.bea.dsp.ide.common.server.services.DeploymentSvc.access$500(DeploymentSvc.java:98)
     at com.bea.dsp.ide.common.server.services.DeploymentSvc$DeploymentOperation.run(DeploymentSvc.java:1174)
     at org.eclipse.jface.operation.ModalContext$ModalContextThread.run(ModalContext.java:113)
Caused by: javax.management.InstanceNotFoundException: com.bea.dsp:Name=DomainServiceMBean,DspType=com.bea.dsp.management.DomainServiceMBean
     at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getMBean(DefaultMBeanServerInterceptor.java:1010)
     at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.getClassLoaderFor(DefaultMBeanServerInterceptor.java:1349)
     at com.sun.jmx.mbeanserver.JmxMBeanServer.getClassLoaderFor(JmxMBeanServer.java:1300)
     at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.getClassLoaderFor(WLSMBeanServerInterceptorBase.java:54)
     at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.getClassLoaderFor(WLSMBeanServerInterceptorBase.java:52)
     at weblogic.management.jmx.mbeanserver.WLSMBeanServerInterceptorBase.getClassLoaderFor(WLSMBeanServerInterceptorBase.java:52)
     at weblogic.management.jmx.mbeanserver.WLSMBeanServer.getClassLoaderFor(WLSMBeanServer.java:498)
     at javax.management.remote.rmi.RMIConnectionImpl$4.run(RMIConnectionImpl.java:1306)
     at java.security.AccessController.doPrivileged(Native Method)
     at javax.management.remote.rmi.RMIConnectionImpl.getClassLoaderFor(RMIConnectionImpl.java:1303)
     at javax.management.remote.rmi.RMIConnectionImpl.invoke(RMIConnectionImpl.java:766)
     at javax.management.remote.rmi.RMIConnectionImpl_WLSkel.invoke(Unknown Source)
     at weblogic.rmi.internal.BasicServerRef.invoke(BasicServerRef.java:589)
     at weblogic.rmi.internal.BasicServerRef$1.run(BasicServerRef.java:479)
     at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:363)
     at weblogic.security.service.SecurityManager.runAs(Unknown Source)
     at weblogic.rmi.internal.BasicServerRef.handleRequest(BasicServerRef.java:475)
     at weblogic.rmi.internal.BasicServerRef.access$300(BasicServerRef.java:59)
     at weblogic.rmi.internal.BasicServerRef$BasicExecuteRequest.run(BasicServerRef.java:1016)
     at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
     at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)
3. It appears that Oracle has rebranded DSP as Data Integrator (or is this Data Service Integrator). Do you know if ALDSP will no longer be supported?
Thanks.
Azeem. 

1. Did you create a SQL Map in your dataspace? (right-click on your dataspace in the project explorer in workshop studio) Only objects published in the SQL Map are accessible via the jdbc driver. You might try connecting to the jdbc api via a java program or a db tool (like DBVisualizer) to make sure you have the plumbing hooked up. You can specify a debug log file in the jdbc driver url like : jdbc:dsp#localhost:7001/test1;logFile=c:\debug_dsp_jdbc.txt
2) I've never seen this before. Could you try stopping your server, then deleting everything in <your-domain>/dsp and <your-domain>/dspconfig, restarting the server and then re-deploying your dataspace?
3) Correct, ALDSP is being rebranded for Oracle and renamed to Oracle Data Service Integrator (not to be confused with Oracle Data Integrator). Existing releases will be supported following BEA's policy - no change there. 

Hi Mike,
Thanks for your reply. I did what you had suggested:
- Created a SQL Map
- Connected to DSP using MyEclipse and could connect successfully.
- However, when I try to connect using Oracle Reports, it still does not do anything (The connect dialog screen does not respond and just sits there, but gives me an error if I have a type in the url). I added the path for the log file, but the file is empty (0 bytes).
I'm not sure if I can get Oracle Reports to recognize the driver as I don't get an error message and the log file is empty. Any ideas on what else I can try to get this to work? Oracle Reports is part of our architecture and it would be really nice if I could get data from DSP.
Some additional info:
The driver configuration I set up for DSP JDBC is:
<driver name = "DSP"
sourceDatabase = "other"
subProtocol = "dsp"
connectString = "mainProtocol:subProtocol#databaseName"
class = "com.bea.dsp.jdbc.driver.DSPJDBCDriver"
connection = "oracle.reports.plugin.datasource.jdbcpds.JDBCConnectionHandling">
</driver>
The Dialog box I get when I connect the Driver is:
Username: weblogic
Password: *******
Database: localhost:7001/Plans
Driver Type: DSP
I had to use the subProtocol and Database as above so that I could create the Database URL as: jdbc:dsp#localhost:7001/Plans (this url works from MyEclipse). I'm assuming none of this is causing the problem. Do you see anything wrong with this configuration/set up?
The oracle documentation to use the JDBC PDS is at: http://download-uk.oracle.com/docs/cd/B10464_05/bi.904/b13673/pbr_jdbcpds.htm
Thanks.
Azeem.
Edited by: user475229 on Oct 22, 2008 2:23 PM 

The creation of the log file suggests the driver is being called.
What did you type incorrectly in the URL, and what was the error? If you entered everything correct except for the dataspace name - you should see a JNDI lookup failure from the driver. If you don't get that - you have some problems in your setup.
Other than that - this seems to be an Oracle Reports problem - have you tried posting on an Oracle Reports forum? Have you opened a case with customer support (either Oracle Reports or ALDSP?).
Did you look in the log file(s) at
8.4.2 Trace Information
Use the detailed trace information (ORACLE_HOME\reports\logs\) generated by Oracle Reports to debug your JDBC query.
Design time (building a JDBC query) and run time (running a JDBC query)
The trace information generated is helpful to find out the following:
Lexical and bind parameters.
Final connect string formed to connect to the driver. 

Hi Mike,
Thank you so much for your reply. I looked in the Reports log and found the following error:
Exception occurred during event dispatching:
java.lang.UnsupportedClassVersionError: weblogic/platform/JDK (Unsupported major.minor version 49.0)
.................
I googled this and found that Oracle Reports was using jdk 1.4 and upgraded this to 1.5. Once I did this I can now connect to DSP but get some other errors with Oracle Reports (I'm working with Oracle Support to see if there are any problems if I use jdk 1.5). However, a query that I can run successfully using the DSP Driver in MyEclipse is now giving the the following error. I'm trying to see if this is a Reports or DSP issue:
ERR 62007 : SQL Error: null Error while parsing Stored Procedure Call: Keywork call not found
Thanks a lot for your help.
Azeem.
Update:
I just found out from Oracle Support that Oracle Reports cannot use JDK 1.5 (only 1.4) and it appears that the DSP Driver has some components that reference JDK 1.5. Therefore, I might not be able to use this driver from Oracle Reports. If this is an incorrect assumption please let me know.
Edited by: user475229 on Oct 23, 2008 9:23 AM 

it appears that the DSP Driver has some components that reference JDK 1.5.The DSP JDBC driver for ALDSP 2.5 is built for JDK 1.4 and will work with DSP 3.x. If you email me at michael.reiche at oracle, I can send you back the DSP 2.5 jdbc driver. You'll also need weblogic.jar from WLS 8.1.6. As it may reference other jars in the wls installation - you're best bet is to download/install WLS 8.1.6. If you want to try just weblogic.jar alone - I can give you instructions how to get it.
regarding the "Keyword call not found" error. After switching to the 2.5 jdbc driver - if you still get the error - can you post the stack trace from the DSP jdbc log file and the sql statement from the oracle reports log file?
Edited by: mikereiche on Oct 23, 2008 9:49 AM
Edited by: mikereiche on Oct 23, 2008 9:52 AM 

I got this error as my license file got expired. After the new license file installation, I could do the deployment successfully.

Related

Error 500 in UDDI registry in IAS902

I tryed to run the UDDI registry inside the IAS902 and became only at the first time, after installation the following message:
500 Internal Server Error
java.lang.Error: Error in loading server config.oracle.uddi.server.UddiCaveatException: A serious technical error occured while processing the request.
     at oracle.uddi.server.UddiServerPropertyConfig.loadConfigPropertiesDatabase(UddiServerPropertyConfig.java:288)
     at oracle.uddi.server.UddiServerPropertyConfig.init(UddiServerPropertyConfig.java:167)
     at oracle.uddi.server.UddiServerProperty.init(UddiServerProperty.java:134)
     at oracle.uddi.server.UddiServerProperty.getProperty(UddiServerProperty.java:159)
     at oracle.uddi.server.utils.LoggerFactory.getInstance(LoggerFactory.java:31)
     at oracle.uddi.server.utils.UddiServerUtils.<clinit>(UddiServerUtils.java:38)
     at oracle.uddi.server.request.servlet.UddiInquiryServlet.<clinit>(UddiInquiryServlet.java:51)
     at java.lang.Class.forName0(Native Method)
     at java.lang.Class.forName(Class.java:195)
     at com.evermind[Oracle9iAS (9.0.2.0.0) Containers for J2EE].server.http.HttpApplication.loadServlet(HttpApplication.java:1621)
     at com.evermind[Oracle9iAS (9.0.2.0.0) Containers for J2EE].server.http.HttpApplication.findServlet(HttpApplicat[i]Long postings are being truncated to ~1 kB at this time. 
--- BEGIN wrapped exception ---
java.sql.SQLException: ORA-01017: invalid username/password; logon denied
     at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:185)
     at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:241)
     at oracle.jdbc.ttc7.O3log.receive2nd(O3log.java:517)
     at oracle.jdbc.ttc7.TTC7Protocol.logon(TTC7Protocol.java:276)
     at oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:355)
     at oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:457)
     at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:332)
     at java.sql.DriverManager.getConnection(DriverManager.java:517)
     at java.sql.DriverManager.getConnection(DriverManager.java:146)
     at oracle.jdbc.pool.OracleDataSource.getConnection(OracleDataSource.java:150)
     at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPhysicalConnection(OracleConnectionPoolDataSource.java:98)
     at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(OracleConnectionPoolDataSource.java:77)
     at oracle.jdbc.pool.OracleConnectionPoolDataSource.getPooledConnection(OracleConnectionPoolDataSource.java:61)
     at oracle.jdbc.pool.OracleConnectionCacheImpl.getNewPoolOrXAConnection(OracleConnectionCacheImpl.java:425)
     at oracle.jdbc.Long postings are being truncated to ~1 kB at this time. 
Invalid username/password? why? Where can I correct it? 
Make sure the data-sources.xml in the orrauddi.ear deployment (normally under the <oc4j_home_or_Oracle9iAS_home>\<oc4j-instance>\application-deployments) has the right entries for your DB where the UDDI schema was installed:
Here's mine for one on my local machine (the key entry is the jdbc/OracleUddi name which is what the UDDI engine is looking for):
<?xml version="1.0"?>
<!DOCTYPE data-sources PUBLIC "-//Evermind//- Data-sources configuration" "http://xmlns.oracle.com/ias/dtds/data-sources.dtd">
<data-sources>
     <data-source
          class="oracle.jdbc.pool.OracleConnectionCacheImpl"
          name="jdbc/OracleUddi"
          location="jdbc/OracleUddi"
          pooled-location="jdbc/pool/OracleUddi"
          connection-driver="oracle.jdbc.driver.OracleDriver"
          username="uddisys"
          password="uddisys"
          url="jdbc:oracle:thin:#127.0.0.1:1521:O920"
     />
</data-sources>
Mike. 
It works. The problem was to create a correct data source.
Thanks 
I seem to be having this exact same problem at the moment, getting the same exception stack mentioned above caused by an "invalid username/password" error. The problem indeed seems to be the fact that I cannot connect to the J2EE data source, but I have my data source configured as Mike posted above (except for the host information, of course). Using sqlplus, I can successfully connect to my infrastructure DB with the username/password uddisys/uddisys, so that account has been set up correctly. Any ideas?
I should also mention that when I browse to "UDDI Registry" under OC4J_Home in the EM Website, I do not see an "Administration" section (as mentioned in the documentation) that lets me publish a web service.
My setup: I have Oracle 9iAS (full/BI installation) running on the same machine as my Oracle 9iAS Infrastructure. I unzipped the UDDI patch files into ds/uddi of both Oracle homes as the documentation seemed to suggest (I interpreted ORACLE_HOME_DB to mean the ORACLE_HOME of my infrastructure, and ORACLE_HOME_OC4J to mean the ORACLE_HOME of my application server). I have deployed no other applications to either of my 9iAS instances, as they are both fresh installs as of a few hours ago.
Any help that anyone could provide would be greatly appreciated!
Thanks,
Brian
Did you re-deploy the ear file as per the instructions - the last patch for the 9.0.2 Oracle9iAS had these instructions:
http://otn.oracle.com/tech/webservices/htdocs/uddi/orauddiv9023patch.htm
Just checking before getting more details.
Mike. 
Hi Mike,
What do you mean by "re-deploy"? I deployed the EAR file once as described in section 1.1.1, steps a-g of the "For Oraclie 9iAS" section. Are you suggesting that I should be following the instructions in section 1.2?
Thanks for your help,
Brian 
No ... I believe you have followed the right instructions. Couple last checks ... I assume you updated the datasources.xml on the same machine/home you installed the ear file on?
You might want to look down in the \application-deployments\orauddi* directory for another datasources.xml as I believe there might be one automatically generated during the 1.1.1 install process, and make sure it has the right config in it. Perhaps your issue is the wrong datasources.xml is being used.
Hope this points you in the right direction.
Mike. 
Yes, it's the same ORACLE_HOME. There is datasources.xml and datasources.xml.smibak in ${ORACLE_HOME}/j2ee/home/application-deployments/orauddi. Both are identical and look like this:
<?xml version = '1.0' standalone = 'yes'?>
<!DOCTYPE data-sources PUBLIC "Orion data-sources" "http://xmlns.oracle.com/ias/dtds/data-sources.dtd">
<data-sources>
<data-source class="oracle.jdbc.pool.OracleConnectionCacheImpl" location="jdbc/OracleUddi" password="uddisys" username="uddisys" url="jdbc:oracle:thin:#maggie:1521:iasdb" connection-driver="oracle.jdbc.driver.OracleDriver" name="jdbc/OracleUddi"/>
</data-sources>
Interestingly, the demo UDDI applications seem to work, at least the one that retrieves information about the UDDI registry. Also, there seem to be three layers to the exception that I get when I try to drill down on a taxonomy in EM:
Failed to establish a connection to the infrastructure database: Error in loading server config. oracle.uddi.server.UddiCaveatException: A serious
technical error occured while processing the request. at oracle.uddi.server.UddiServerPropertyConfig.loadConfigPropertiesDatabase(UddiServerPropertyConfig.java:288)
[snip]
--- BEGIN wrapped exception ---
oracle.uddi.server.UddiCaveatException: An internal error occurred while trying to create and setup a datasource abstraction for the underlying database. at
oracle.uddi.server.backend.db.DataSourceBuilderOcciAbastractImpl.create(DataSourceBuilderOcciAbastractImpl.java:90)
[snip]
--- BEGIN wrapped exception ---
java.sql.SQLException: ORA-01017: invalid username/password; logon denied at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:185)
It still seems to revolve around the incorrect username/password, though I have specified the correct username/password as I mentioned before.
I think another key clue might be the fact that, when viewing the taxonomies in EM, I do not see the "Administration" link mentioned in 2.5.4, step 2 of the documentation. Thus I haven't been able to publish any web services so far... does this mean that there is something wrong with the J2EE deployment of the UDDI patch?
Thank you so much for your help! I feel like we're very close to finding the solution...
Brian 
Another possible clue: if I try to publish a web service from an EAR file, the publishing wizard does not make available the "UDDI Type" taxonomy... though I don't remember loading a control for it, shouldn't a properly-working UDDI registry offer this taxonomy? 
Two more pieces:
1. (Not a surprise) If I go through and publish the web services found in an EAR file, I get the message:
"The application was deployed successfully, but an error occurred while publishing the web services. You can attempt to re-publish the services from the deployed application. Failed to establish a connection to the infrastructure database: java.lang.NoClassDefFoundError"
2. Using JDeveloper, I can connect to the UDDI registry and search for all web services described by WSDL and I successfully get a list containing the "uddi-org:inquiry" and "uddi-org:publication" services.
So it seems that the problem is taxonomical in nature...? 
Before I answer Brian's specific question, let me try to explain the two installation options with the released UDDI patch and their difference in functionalities and install procedures.
1. iAS midtier + iAS infrastructure database as the
backend storage
- the iAS midtier is "associated" with the iAS
infrastructure (an install option in installing
the iAS midtier)
- You get a registry that supports UDDIv2 API.
You also get publishing / browsing support in OEM.
- follow instruction 1.2 (Upgrade).
- No data-source.xml is involved in the setup.
Database connection information is managed by iAS's
infrastructure management. (It's more secured than
data-soruce.xml)
- MUST NOT use instruction 1.1 (install). Because 1.1
will change the password on the database schema
UDDISYS, which will break the iAS's infrastructure
management (on getting appropriate database
connection information).
2. iAS midtier (it could also be oc4j_extended.zip) +
customer-specified Oracle database (i.e., non
infrastructure database)
- You get a registry that supports UDDIv2 API.
But you DO NOT get publishing / browsing support
in OEM.
- follow instruction 1.1 (install)
- data-source.xml is used to obtain database
connection information.
Hope that clears up some confusion.
Brian,
Now let me try to answer your questions.
From what you describe, it seems that you have used the setup of iAS mid-tier with customer-specified Oracle database since you have used data-sources.xml in your setup.
In this setup, publishing support in OEM IS NOT possible. You can still publishing services progrmmatically going through UDDI SOAP API. That is what the demo JSP applications do.
- sam

OWB Java API oracle.wh.service.sdk.mapping.debugger.WBMappingDebuggerExcept

Hi.
I am trying to make an example related with the OWB Java API. My example is trying to run a map created in Warehouse Builder 11. This is:
oracle.owb.connection.RepositoryManager rm =
oracle.owb.connection.RepositoryManager.getInstance();
OWBConnection owbconn =
rm.openConnection("mylogin", "mypass", "myip:1521:blabla",
rm.MULTIPLE_USER_MODE, "mylogin.mylogin");
if (owbconn != null) {
System.out.println("Connection Establishied..");
}
ProjectManager pmgr = ProjectManager.getInstance();
Project project = pmgr.setWorkingProject("TEST");
OracleModule db = project.findOracleModule("MY_ORACLE");
Map mapa = db.findMap("Map1");
mapa.startDebugSession();
project.unlock();
owbconn.rollback();
rm.disconnect();
But I always get a oracle.wh.service.sdk.mapping.debugger.WBMappingDebuggerException: DBG1052. The exception says something related with "... there is not a Control Center connection...".
So, there is a way in which I can make a connection with a Control Center, or an "how do this" example?
Thanks. 
may be this will help
Public Java API 
Hi fanvedder,
How did you managed to get your connection to your OWB 11g repository?
I am having some difficulties with it. When I set my OWB_HOME to the owb-installation directory I got the message:
Registering default execution strategy...
Registering default execution engine...
java.lang.NullPointerException
     at java.util.Hashtable.put(Hashtable.java:394)
     at java.util.Properties.setProperty(Properties.java:143)
     at java.lang.System.setProperty(System.java:729)
     at oracle.wh.service.impl.assistant.AssistantScriptingApi.<init>(AssistantScriptingApi.java:74)
     at oracle.wh.service.impl.ServiceController.init(ServiceController.java:81)
     at oracle.wh.repos.sdk.ControllerInitializer.initControllers(ControllerInitializer.java:138)
     at oracle.wh.repos.sdk.ControllerInitializer.initBackendControllers(ControllerInitializer.java:93)
     at oracle.owb.connection.RepositoryManager.<init>(RepositoryManager.java:418)
     at oracle.owb.connection.RepositoryManager.<clinit>(RepositoryManager.java:482)
     at local.achmeavastgoed.owb.Test.main(Test.java:42)
ServiceController: Cannot create AssistantScriptingApi... Client will be terminated! Thanks in advance!
Romano 
I was able to get the connection and went on writing ant tasks but eventually realized that even though it is published API, it cannot work out of the box. Very very disappointing. The code in the API makes hard coded references to the OWB installation and uses hard coded relative paths that only work when you run from $OWB_HOME/owb/bin/unix or any directory 2 level down from $OWB_HOME/owb. It appears the API also has lot of code writing directly to standard err and out. You may not get these errors on just connecting. I started to get errors when I attempted to import an MDL file. Following are examples of errors I got
CNV0002-0038(ERROR): Cannot write to file ./../../reposasst/converter.properties
CNV0002-0031(ERROR): Cannot find specified file ..\..\mdl\MDLImportRules.txt
In a nutshell the library is not usable, so I would recommend not to go down to that path.

Consuming External Web Services Tutorial

Hi people,
I'm trying on the tutorial - Consuming External Web Services Tutorial
Object Name: D5500001
Description: Call Get Fortune Business Service
and encountered the following error while I tried to run the business service J5500001.jpr.
The error message I've got:
C:\JDeveloper\jdk\bin\javaw.exe -client -classpath C:\E900\DEMO\Java\classes;C:\JDeveloper\webservices\lib\jaxrpc-api.jar;C:\JDeveloper\webservices\lib\wsclient.jar;C:\JDeveloper\webservices\lib\wsserver.jar;C:\JDeveloper\webservices\lib\wssecurity.jar;C:\JDeveloper\webservices\lib\wsdl.jar;C:\JDeveloper\webservices\lib\orasaaj.jar;C:\JDeveloper\webservices\lib\saaj-api.jar;C:\JDeveloper\webservices\lib\orawsdl.jar;C:\JDeveloper\webservices\lib\orawsrm.jar;C:\JDeveloper\webservices\lib\jaxr_api.jar;C:\JDeveloper\webservices\lib\orajaxr.jar;C:\JDeveloper\webservices\lib\relaxngDatatype.jar;C:\JDeveloper\webservices\lib\jaxb-impl.jar;C:\JDeveloper\webservices\lib\jaxb-libs.jar;C:\JDeveloper\webservices\lib\xsdlib.jar;C:\JDeveloper\webservices\lib\mdds.jar;C:\JDeveloper\jlib\jaxen.jar;C:\JDeveloper\jlib\oraclepki.jar;C:\JDeveloper\jlib\ojpse.jar;C:\JDeveloper\jlib\osdt_core.jar;C:\JDeveloper\jlib\osdt_cert.jar;C:\JDeveloper\jlib\osdt_xmlsec.jar;C:\JDeveloper\jlib\osdt_wss.jar;C:\JDeveloper\jlib\osdt_saml.jar;C:\JDeveloper\jlib\repository.jar;C:\JDeveloper\jlib\ojmisc.jar;C:\JDeveloper\j2ee\home\lib\http_client.jar;C:\JDeveloper\j2ee\home\jazncore.jar;C:\JDeveloper\j2ee\home\oc4jclient.jar;C:\JDeveloper\rdbms\jlib\xdb.jar;C:\JDeveloper\diagnostics\lib\ojdl2.jar;C:\E900\DEMO\ini\sbf;C:\E900\System\Classes\Base_JAR.jar;C:\E900\System\Classes\BizLogicContainer_JAR.jar;C:\E900\System\Classes\BusinessLogicServices_JAR.jar;C:\E900\System\Classes\Connector.jar;C:\E900\System\Classes\EventProcessor_JAR.jar;C:\E900\System\Classes\Generator_JAR.jar;C:\E900\System\Classes\JdbjBase_JAR.jar;C:\E900\System\Classes\JdbjInterfaces_JAR.jar;C:\E900\System\Classes\JdeNet_JAR.jar;C:\E900\System\Classes\Maf2Base_JAR.jar;C:\E900\System\Classes\mafsecurity.jar;C:\E900\System\Classes\Metadata.jar;C:\E900\System\Classes\MetadataInterface.jar;C:\E900\System\Classes\PMApi_JAR.jar;C:\E900\System\Classes\SBFFoundation_JAR.jar;C:\E900\System\Classes\Spec_JAR.jar;C:\E900\System\Classes\System_JAR.jar;C:\E900\System\Classes\SystemInterfaces_JAR.jar;C:\E900\System\Classes\castor.jar;C:\E900\System\Classes\log4j.jar;C:\E900\System\Classes\xerces.jar;C:\E900\System\Classes\xml-apis.jar;C:\E900\System\Classes\Rijndael.jar;C:\E900\System\Classes\ManagementAgent_JAR.jar;C:\E900\System\Classes\commons-logging.jar;C:\E900\System\Classes\commons-codec-1.3.jar;C:\E900\System\Classes\commons-httpclient-3.0.jar;C:\E900\System\Classes\jmxremote.jar;C:\E900\System\Classes\jmxremote_optional.jar;C:\E900\System\Classes\jmxri.jar;C:\E900\System\Classes\rmissl.jar;C:\E900\misc\classes12.jar;C:\E900\misc\mssqlserver.jar;C:\E900\misc\msutil.jar;C:\E900\misc\msbase.jar;C:\E900\misc\db2java.zip;C:\E900\misc\jt400.jar;C:\E900\misc\sqljdbc.jar;C:\JDeveloper\lib\xmlparserv2.jar;C:\JDeveloper\lib\xml.jar oracle.e1.bssv.J5500001.TestGetFortuneBSSV
com.jdedwards.system.connector.dynamic.ServerFailureException: *Exception occurred while validating role and/or environment in Java Connector Login method:[DATA_SOURCE_NOT_FOUND] Data source for F00950, TBLE not found. ([DATABASE_CONNECT_FAILED] Database Connection failed for DataSource System Local.)*
at com.jdedwards.system.connector.dynamic.Connector.loginBase(Unknown Source)
at com.jdedwards.system.connector.dynamic.Connector.login(Unknown Source)
at oracle.e1.bssvfoundation.impl.security.E1Principal.login(Unknown Source)
at oracle.e1.bssvfoundation.impl.security.PrincipalCache.getIniPrincipal(Unknown Source)
at oracle.e1.bssvfoundation.impl.jdenet.CallSBFHandler.callSBF(Unknown Source)
at oracle.e1.bssvfoundation.base.TestBusinessService.callBSSVWithXMLFile(Unknown Source)
at oracle.e1.bssv.J5500001.TestGetFortuneBSSV.main(TestGetFortuneBSSV.java:14)
Authentication Failure for BSSV request. Could not get Principal.
Process exited with exit code 0.
Anyone knows where gone wrong and the rectification steps?
Regards,
Chew Ling 
After working offline with Chew Ling on this issue, the cause was found to be a mismatch between the java archive files that are loaded when the local OC4J or embedded JDeveloper OC4J runs, and the database driver JAR file that exists in the c:\e900\MISC folder. This is a configuration problem which particularly affects development clients that use a local Oracle database, including the Standalone Oracle DB install that Chew Ling is using, and is a known problem (ref: https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&doctype=PROBLEM&id=859688.1).
The list of jars that are loaded by the OC4J is held in the C:\e900\system\Classes\SBFProjects.library file, and the solution is to add the ojdbc5.jar Oracle DB driver file to the list.
Dave

Importing service description from UDDI, makes BP Architect to exit

Hi guys,
I have BP Architect (BPA Suite 11gR1) installed on WinXP sp3
I want to import WSDL from UDDI (e.g. Oracle Service Registry 11.1.1)
Create and test of the connection (BPA->View->Options->Connections),e.g. my connection name; UDDI_OSR: http://192.168.59.1:7301/registry/uddi/inquiry
is successful.
But when I want to import service description:
right-click myBusinessDtata folder->SOA->import service description->service URI->browse->select type UDDI-> select connection: UDDI_OSR
at this point (after select UDDI_OSR from the list),
BP Architect suddenly crashes and closes!
I tried to seek for some *.log file - nothing found.
Looked at support sites - nothing.
Please, help if someone has faced such a problem!
Thank you very much!
Cheers,
George 
I installed BP Architect on Linux (OEL5-32) and I encountered the same problem, but under Linux I was able to see the full java exception.
Besides the short exception trace in the log file under WinXP, which is: Failure to initialize mapper+
under Linux the stack trace is much more complete:
----
Failure to initialize mapper
*2010-05-05T09:29:28,358 SEVERE - Exiting unable to initial JAXB context*
javax.xml.bind.JAXBException: Provider com.sun.xml.bind.ContextFactory_1_0_1 not found
- with linked exception:
java.lang.ClassNotFoundException: com.sun.xml.bind.ContextFactory_1_0_1
at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:147)
at javax.xml.bind.ContextFinder.find(ContextFinder.java:249)
at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:372)
at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:337)
at javax.xml.bind.JAXBContext.newInstance(JAXBContext.java:244)
at com.sun.xml.registry.uddi.UDDIMapper.initJAXBObjectFactory(Unknown Source)
at com.sun.xml.registry.uddi.UDDIMapper.<init>(Unknown Source)
at com.sun.xml.registry.uddi.RegistryServiceImpl.<init>(Unknown Source)
at com.sun.xml.registry.uddi.ConnectionImpl.<init>(Unknown Source)
at com.sun.xml.registry.uddi.ConnectionFactoryImpl.createConnection(Unknown Source)
at com.sun.xml.registry.common.ConnectionFactoryImpl.createConnection(Unknown Source)
at com.idsscheer.aris.client.components.oracle.gui.extensions.browsing.ImportServiceBrowseDialogs.UddiRegistryAccess.createConnection(UddiRegistryAccess.java:68)
at com.idsscheer.aris.client.components.oracle.gui.extensions.browsing.ImportServiceBrowseDialogs.UddiRegistryAccess.readRegistry(UddiRegistryAccess.java:41)
at com.idsscheer.aris.client.components.oracle.gui.extensions.browsing.ImportServiceBrowseDialogs.AUDDIPanel$2.run(AUDDIPanel.java:112)
at com.idsscheer.aris.client.common.gui.AProgressDialog$2.run(AProgressDialog.java:537)
at java.lang.Thread.run(Thread.java:619)
Caused by: java.lang.ClassNotFoundException: com.sun.xml.bind.ContextFactory_1_0_1
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:252)
at javax.xml.bind.ContextFinder.safeLoadClass(ContextFinder.java:481)
at javax.xml.bind.ContextFinder.newInstance(ContextFinder.java:113)
... 15 more
----
Just to say it again:
I'm able to create new Connection (Main menu: View->Options->Connections) and to test it successfully.
BP Architect crashes when I'm trying to import service description (SOA) by selecting the new created connection in the moment I just select it from the drop-down menu and before to be able to click the Add or Find button.
UDDI I'm browsing are two Oracle Service Registry 11g instances (WebLogic Server 10.3.2 domains) running on Linux and Windows. (I just wanted to see if the problem is related to the OS hosting the WLS)
Any help or suggestion is extremely appreciated.
Thanks a lot.
Cheers,
George 
I found a workaround.
I. BPA installed on Linux OEL 5 (x86-32bit)
1.
The class: com.sun.xml.bind.ContextFactory_1_0_1 is missing in the BPA jar: jaxb-impl.jar+
So, I download one of the jars containiing the missing class.
(e.g., Download jaxb1-impl-2.0.3.jar from http://mirrors.ibiblio.org/pub/mirrors/maven2/com/sun/xml/bind/jaxb1-impl/2.0.3/jaxb1-impl-2.0.3.jar )
2.
I put jaxb1-impl-2.0.3.jar in the *${BPASuite_Install_Folder}/JavaClient.423484/lib* folder.
I added the new jar file in the classpath by editing the *${BPASuite_Install_Folder}/JavaClient.423484/Oracle Architect 11g.sh* file:
CLASSPATH=${jars}/clientlib.jar:${jars}/aris_loader.jar:${jars}/jaxb1-impl-2.0.3.jar
Note: Although, in the Oracle Architect 11g.sh file, the ${jars} is set to ./lib and there is a java option -classpath "${jars}:${CLASSPATH}", before to edit the CLASSPATH manually, BPA wasn't be able to find the jar. Strange?!
3.
After doing 1 & 2, I restarted the BPA and I was able to browse the UDDI and to Find and import services.
II. BPA installed on Windows XP sp3
1. Do step 1. as for Linux
2. Put the jaxb1-impl-2.0.3.jar into +%BPASuite11g_InstallDir%\JavaClient\lib+
3. Edit the file: *%BPASuite11g_InstallDir%\JavaClient\config\launcher.cfg*
Add:
-Xbootclasspath/a:%BPASuite11g_InstallDir%\g\JavaClient\lib\jaxb1-impl-2.0.3.jar to jvmOptions JVM parameter
e.g.:
jvmOptions="-Xmx256m;-Xms128m;-XX:NewSize=64m;-XX:MaxNewSize=128m;-XX:MaxPermSize=192m;-Xbootclasspath/a:D:\FMW11g\BPASuite11g\JavaClient\lib\jaxb1-impl-2.0.3.jar"
4. Restart BPA
Please, send some comments if anyone has been found anything else solution or faced the same problem.
Cheers,
George
Edited by: George Moykin on 2010-5-5 11:48
Edited by: George Moykin on 2010-5-5 12:44 
George,
Hi, more than 1 year after I'm having the same issue with BPA 11gR1.
I'm trying to invoke a service located in Oracle Service Bus (OSB), but I will get the "unexpected error" when it tries to import it.
Oddly enough, when I tried made a mock service by hand and tried to use its wsdl it got imported without any problem.
I tried what you suggest here in this thread without any luck. Im running Windows 7. Any other ideas?
Thanks
David

XQuery execute 'No 2002 query engine found' found exception

Hi,
I've used the upgrade tool in Weblogic 10.3 to upgrade a weblogic 8.1 Web Service.
I'm seeing the following run time exception being throwing at the point where I am using the execQuery command:
No 2002 query engine found.
     at org.apache.xmlbeans.impl.store.Query.getCompiledQuery(Query.java:72)
     at org.apache.xmlbeans.impl.store.Query.getCompiledQuery(Query.java:53)
     at org.apache.xmlbeans.impl.store.Query.cursorExecQuery(Query.java:48)
     at org.apache.xmlbeans.impl.store.Cursor._execQuery(Cursor.java:1336)
     at org.apache.xmlbeans.impl.store.Cursor.execQuery(Cursor.java:3857).....
I would appreciate any help on this exception.
The relevant code is below:
org.apache.xmlbeans.XmlOptions forceXqrl2002ForXpathXQuery = new org.apache.xmlbeans.XmlOptions(); (Added by the upgrade tool)
forceXqrl2002ForXpathXQuery.put(org.apache.xmlbeans.impl.store.Path._forceXqrl2002ForXpathXQuery); (Added by the upgrade tool)
xmlCursor = xmlCursor.execQuery(expression, forceXqrl2002ForXpathXQuery);
Thanks 
I am not sure if this helps or not but I had to add the following lines to the startup script [check the version of the JAR's as each service is slightly different]:
C:\bea\modules\com.bea.core.xquery.xmlbeans-interop_0.9.6.0.jar
C:\bea\modules\com.bea.core.xquery_0.9.6.0.jar

Categories

Resources