on 09-30-2008 8:02 PM
Hello SAP Java Gurus:
At our client, we have a
a) Java DC -- contains some business logic
b) extlibs DC -- contains external Jar files
c ) ejb DC -- contains session beans EJB
d) ear DC -- for bundling a, b, c
Java DC, ejb DC both use extlibs DC so, accordingly
public parts were exposed out of extlibs DC and 'Used
DC' relation was established between a-c, and c-b.
The purpose of ear DC is just to bundle a, b, c and
deploy them to the server. So we created public parts
of a, b, c and then created 'Used DC' relationship btwn
d and a, b, c. Everything is compiling, deployed and
working fine.
Now, we added a new functionality in to a)Java DC
which needed some two new standard SAP delivered
DCs (1) Connector.jar -- j2eeca
(2)GenericConnector.jar --- tc/conn/connectorframework
So, we added these standard DCs as 'Used DC' to Java
DC for both build time and runtime(strong). The code
compiled well and when deployed and run, it is giving
an exception "java.lang.NoClassDefFoundError:
com/sapportals/connector/ConnectorException".
This class and package structure exists in the standard
SAP DC -- tc/conn/connectorframework. This was
given as both build time and runtime(strong) reference
to Java DC !! Why the code in Java DC is failing to use
it during the runtime ??
To do some testing, we gave the same build time and
runtime references to those two standard SAP DCs to
the other two DCs too, i.e., ejb DC and ear DC, but
no use, same error.
Does anyone have any ideas over this ?
Your suggestions are highly appreciated.
Best Regards,
Prasad Nutalapati
Hi prasad,
Open application-j2ee-engine.xml
and add library/service reference as
sap.com/tc/conn/connectorframework
the refernce may be library or service or sharing. please do as per your requirment.
for this check the DC tc/conn/connectorframework in development configuration perspective. where you can see the type of DC. i.e. it is library of service
this will solve the problem.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
The problem was already solved.
The problem is that the Java DC is deployed via the EARu2026so it gets the runtime linkage via the EAR linkages to Jars/Libraries on the AS Java. To do this you need to set these linkages or references on the EAR DCu2019s application-j2ee-engine.xml. There you can make references to libraries/services/interfaces on the AS Java that contain the APIs of the DCs mentioned.
This solution does only work for 7.0 AS Javau2026if it is a 7.1 AS Java then the above will not be true sine things have changed there.
Thanks,
Prasad
User | Count |
---|---|
84 | |
24 | |
12 | |
9 | |
7 | |
6 | |
5 | |
5 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.