Problem deploying new version of 3rd party jar
I have a third party jar file that was recently updated with to a new version. I deleted the old jar file and replaced it with the new version. Modified classpath accordingly. The strange thing is that the only way I could get the classes that use this jar file to work was to recompile them. What am I missing?
When replacing a jar file it is alway a good idea to recompile against it... this ensures backward compatibity and also prevents Incompatible Class Change Errors. Your new 3rd party jar may not be completely backwards compatible, although it is always a good idea to recompile when implementing a new jar that your application depends on.
Similar Messages
-
Classpath and 3rd party jar files
We have been searching for a long time and have not been able to find an answer to our question. Do you think that you could help us out?
We need to include 3rd party jar files in our application. Where in the deployment classpath directory structure can we place these. This does not seem to happen when we publish.
We also need to give our clients the ability to modify our configuration. Currently we do this with an xml file, which we place under server/config in our JBoss directory. We also need to find a home for out log4J configuration file.
Where does this type of thing exist in the SAP world?We have had problems with 3rd party jar files also. We ended up including them in the WEB-INF/lib directory of our WAR file and packaging/deploying them everytime.
If you are looking for your project on your server, it is deployed to a directory similar to this:
/usr/sap/J01/JC00/j2ee/cluster/server0/apps
Hope this helps.
Chris -
Hi,
I'm trying to use a 3rd party jar with an applet. I can access the functions just fine when using an applet viewer, but when I try deploying the applet from a web page I get classNotFound exceptions. How do I go about getting the applet to recognize the jar file?
ThanksEva, yes, if that class in one of the 3rd party jars wants to access your class directly, then it is necessary that your class is loaded by the same classloader that loads that 3rd party jar or even higher up the classloader hierarchy.
Why do you consider putting your class library into applib "a bit rude"? As long as your classes are named distinctively so that they will not clash with other classes, it is not a problem.
On the other hand, it seems that the design of that 3rd party class is not classloader friendly. Had it used something like the following to load a class that is undefined at the compile time, you might not have this problem.
Class userClass = Thread.currentThread().getContextClassLoader().loadClass(nameOfUserDevelopedClass);
Object plugin = userClass.newInstance(); -
3rd party jars/zips in EAR
Hi
I have some common 3rd party jars and zips that are accessed by my WARs and EJB
JARs. Where in my EAR structure do i place them so that these common jars like
classes12, formulaone etc can be accessed from within my WARs and EJB jars?
Regards Sudhindrahttp://www.jcp.org
Cheers
mbg
"joe" <[email protected]> wrote in message news:[email protected]..
>
what do you mean by "to integrate this back into the specifications"? whatis the
J2EE way to achieve it if there is one? Thanks
"Mark Griffith" <[email protected]> wrote:
Nope, embrace and extend. We are working to integrate this back into
the
specifications.
cheers
mbg
"Joe" <[email protected]> wrote in message
news:3e77c70d$[email protected]..
Is that part of J2EE or weblogic's implementation?
"Mark Griffith" <[email protected]> wrote:
Upgrade to 8.1 and stick the jar's in myEar/APP-INF/lib
cheers
mbg
"Jen" <[email protected]> wrote in message
news:3e724f46$[email protected]..
Is there a way to put in one shot instead of modifying every .jar
and
..war's manifest
file.
Philip Strube <[email protected]> wrote:
Hi Sudhindra,
you can put them in your EAR (on top level or you can create a
directory
for them, like "libs" or sth.), and then create class-path entriesin
the manifest files of your WAR and ejb-jars.
Example: if myApp.war needs myUtil.jar, then write a line
Class-Path: myUtil.jar
in the manifest file of myApp.war. If myUtil.jar is in libs, write
libs/myUtil.jar and so on.
-- Philip
Sudhindra wrote:
Hi
I have some common 3rd party jars and zips that are accessed
by
my
WARs and EJB
JARs. Where in my EAR structure do i place them so that these
common
jars like
classes12, formulaone etc can be accessed from within my WARs
and
EJB
jars?
Regards Sudhindra -
I have developed an app which uses Java Web Start. I created a self signed certificate for now an that works fine.
What I was wondering about was 3rd party jars. Are they responsible for their own signing if they do system or disk I/O? Do I need to contact the vendor to get a signed version? I don't think I should be signing someone elses archive files.
I need to run with all permissons set.My understanding is that if you sign one jar, you need
to sign them all (and with the same certificate).This is only true within the the same jnlp file - not within the whole app.
You can factor out sets of jar files into component extenions (a seperate jnlp file referenced by the original jnlp file.)
Each component extension can have or not have the all-permissions tag, and if it does, the set of jar files in it can be signed by the same or a diferent certificate chain than the original.
/Dietz -
Accessing 3rd party jars from ear.
I was able to create a war with the 3rd party jars in webinf/lib, register it with weblogic and access them from webapps another ear, after specifying this reference in EACH of the webapps.
However if I want to just make the ear reference these jars, ie., all the webapps in the ear access these jars, without individually specifying the reference, then it gives me an error.
What is different with providing a reference from an EAR ? I added it to the weblogic-application.xml as the docs suggested....http://www.jcp.org
Cheers
mbg
"joe" <[email protected]> wrote in message news:[email protected]..
>
what do you mean by "to integrate this back into the specifications"? whatis the
J2EE way to achieve it if there is one? Thanks
"Mark Griffith" <[email protected]> wrote:
Nope, embrace and extend. We are working to integrate this back into
the
specifications.
cheers
mbg
"Joe" <[email protected]> wrote in message
news:3e77c70d$[email protected]..
Is that part of J2EE or weblogic's implementation?
"Mark Griffith" <[email protected]> wrote:
Upgrade to 8.1 and stick the jar's in myEar/APP-INF/lib
cheers
mbg
"Jen" <[email protected]> wrote in message
news:3e724f46$[email protected]..
Is there a way to put in one shot instead of modifying every .jar
and
..war's manifest
file.
Philip Strube <[email protected]> wrote:
Hi Sudhindra,
you can put them in your EAR (on top level or you can create a
directory
for them, like "libs" or sth.), and then create class-path entriesin
the manifest files of your WAR and ejb-jars.
Example: if myApp.war needs myUtil.jar, then write a line
Class-Path: myUtil.jar
in the manifest file of myApp.war. If myUtil.jar is in libs, write
libs/myUtil.jar and so on.
-- Philip
Sudhindra wrote:
Hi
I have some common 3rd party jars and zips that are accessed
by
my
WARs and EJB
JARs. Where in my EAR structure do i place them so that these
common
jars like
classes12, formulaone etc can be accessed from within my WARs
and
EJB
jars?
Regards Sudhindra -
Hai Sir,
I am facing one problme in weblogic8.1 while depolying the .EAR FILE.
Please help me sir.
Case1) 1) I am using the struts and log4j frameworks and 3rd party jar files with
weblogic8.1.
2) I make the ejbs,webapplications and 3rdparty jar files, ear file the following
dir structure .And i mentioned the Class-path including all jar files in the MANIFEST
OF EAR FILE.
While deploying the ear file it is giving following error.If log4j.jar does not
mention in the Weblogic script file
java.lang.NoClassDefFoundError: org/apache/log4j/Priority
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:1494)
at java.lang.Class.getDeclaredFields(Class.java:1073)
at weblogic.ejb20.deployer.EJBModule.disableImplClassLoader(EJBModule.java:1082)
at weblogic.ejb20.deployer.EJBModule.setupEJBToImplClassDependencies(EJBModule.jav
a:982)
at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:419)
at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.j
ava:2792)
at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.
java:1478)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:11
36)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:97
5)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareCon
tainer(SlaveDeployer.java:2571)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(Sla
veDeployer.java:2523)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeploy
er.java:2453)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer
.java:820)
at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:
536)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java
:494)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:
25)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:151)
Please provide the soluation without mentioning classpath in the weblogic script
.How to make the EAR file incliding ejbjar,webapplication and 3rd party jar files.
Thanks & Regards,
ASHOK SAMRAT
[email protected]Refer to the section
Handling Utility classes
http://dev2dev.bea.com/products/wlserver/articles/musser.jsp
thanks,
Deepak
"Ashok Samrat" <[email protected]> wrote:
>
Hai Sir,
I am facing one problme in weblogic8.1 while depolying the .EAR FILE.
Please help me sir.
Case1) 1) I am using the struts and log4j frameworks and 3rd party jar
files with
weblogic8.1.
2) I make the ejbs,webapplications and 3rdparty jar files, ear file
the following
dir structure .And i mentioned the Class-path including all jar files
in the MANIFEST
OF EAR FILE.
While deploying the ear file it is giving following error.If log4j.jar
does not
mention in the Weblogic script file
java.lang.NoClassDefFoundError: org/apache/log4j/Priority
at java.lang.Class.getDeclaredFields0(Native Method)
at java.lang.Class.privateGetDeclaredFields(Class.java:1494)
at java.lang.Class.getDeclaredFields(Class.java:1073)
at weblogic.ejb20.deployer.EJBModule.disableImplClassLoader(EJBModule.java:1082)
at weblogic.ejb20.deployer.EJBModule.setupEJBToImplClassDependencies(EJBModule.jav
a:982)
at weblogic.ejb20.deployer.EJBModule.prepare(EJBModule.java:419)
at weblogic.j2ee.J2EEApplicationContainer.prepareModule(J2EEApplicationContainer.j
ava:2792)
at weblogic.j2ee.J2EEApplicationContainer.prepareModules(J2EEApplicationContainer.
java:1478)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:11
36)
at weblogic.j2ee.J2EEApplicationContainer.prepare(J2EEApplicationContainer.java:97
5)
at weblogic.management.deploy.slave.SlaveDeployer$ComponentActivateTask.prepareCon
tainer(SlaveDeployer.java:2571)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.createContainer(Sla
veDeployer.java:2523)
at weblogic.management.deploy.slave.SlaveDeployer$ActivateTask.prepare(SlaveDeploy
er.java:2453)
at weblogic.management.deploy.slave.SlaveDeployer.processPrepareTask(SlaveDeployer
.java:820)
at weblogic.management.deploy.slave.SlaveDeployer.prepareDelta(SlaveDeployer.java:
536)
at weblogic.management.deploy.slave.SlaveDeployer.prepareUpdate(SlaveDeployer.java
:494)
at weblogic.drs.internal.SlaveCallbackHandler$1.execute(SlaveCallbackHandler.java:
25)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:178)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:151)
Please provide the soluation without mentioning classpath in the weblogic
script
How to make the EAR file incliding ejbjar,webapplication and 3rd party
jar files.
Thanks & Regards,
ASHOK SAMRAT
[email protected] -
Problem with new version 4.3.2 apps not working " after update to the new version "
Problem with new version 4.3.2 apps not working " after update to the new version "
i was in 4.3.1 then i do the update , but now after update i face this problem , so what i Supposed to do ?!!Hi There
Had the same problem as you. App would terminate when launched.
Solution to working You Tube app:
-Go to playstore
- Uninstall app (it doesn't remove the app, only removes the update)
- "Et Voila", working again.
This doesn't correct the problem, it's just a workaround for you to be able to use youtube app again.
Hope it helped.
Best Regards -
How can I include 3rd party jar files with my custom extention?
I'm writing an extension that is dependent upon some 3rd party jars. How can I include/package these with my extension?
we're using the 11g tech preview
thanks,
DylanDo you mean that you need these files to appear in JDeveloper as a library available for the developers who build a project and use your extension?
You can create a library in JDeveloper with JAR files by simply adding the following to your extension.xml file:
<jdeveloper-hook xmlns="http://xmlns.oracle.com/jdeveloper/1013/extension">
- <libraries xmlns="http://xmlns.oracle.com/jdeveloper/1013/jdev-libraries">
<library name="My Extension Library">
<classpath> ${ide.extension.install.home}/lib/some.jar</classpath>
</library>
</jdeveloper-hook> -
Common 3rd Party Jars in an EAR
Hi
I have some common 3rd party jars and zips that are accessed by my WARs and EJB
JARs. Where in my EAR structure do i place them so that these common jars like
classes12, formulaone etc can be accessed from within my WARs and EJB jars?
Regards
SudhindraJust place them at the root level of the .ear and mention them in the
Class-Path entry of the .war manifest.
In article <3e701ee8$[email protected]>, [email protected]
says...
>
Hi
I have some common 3rd party jars and zips that are accessed by my WARs and EJB
JARs. Where in my EAR structure do i place them so that these common jars like
classes12, formulaone etc can be accessed from within my WARs and EJB jars?
Regards
Sudhindra -
Deploying newer version of application on to device.
Hi All,
I wnated to know that is it possible to deploy the newer version of your mobile application to mobile device via webconsole without deleting the older one.As for some minor changes made to application we have to delete the old version to deploy the newer version.Is it possible via some mechanism like Addon...
please help.
Thanks
Regards
DevendraHi Devendra
You cannot deploy a newer version of an application when the older one still exists on the client. But you have mentioned that only few minor changes have been done to the application. For example let me assume that you have changed some code which was included in the jar file of the applicaiton. This jar file always resides in the WEB-INF/lib folder to the applicaiton. You just want to replace this jar file in the older application instead of deleting the application completely. So the solution is to do this is to create a client installer archive which is nothing but an addon. Please refer to the following documention about the <b><i>Client Installer</i></b> http://aiokeh.wdf.sap.corp:50000/SAPIKS2/contentShow.sap?_SCLASS=IWB_STRUCT&_SLOIO=6B5332E9145D0E469F134F7E7E04A34D&TMP_IWB_TASK=PREVIEW2&RELEASE=667&LANGUAGE=EN&_SEQNUM=144&_LOIO=43250E67B6140B25E10000000A1553F6&_CLASS=IWB_EXTHLP
or an alternate link is http://help.sap.com/saphelp_nw04/helpdata/en/3a/b834418b718739e10000000a1550b0/frameset.htm or even refer to the MI Installation Guide.
Once you have referred to the documentation you would know how to create a install.xml file and what are the tags contained in them. Please make sure the MANIFEST.MF file contains an entry called <i><b>PatchArchive:X</b></i>. A sample xml for this problem would look like this.
<?xml version="1.0" encoding="UTF-8" ?>
<ARCHIVE name="Upgrade Application" description="Installer" uimode="full">
<PACKAGE name="MI25" description="New Jar file for application">
<TASK name="Delete old files">
<DELETE targetfolder="%MI_HOME%/webapps/your app name/WEB-INF/lib" pattern="**" mi_running="false" />
</TASK>
<TASK name="Add new files">
<COPY source="/app/" pattern="NewApp.jar" target="%MI_HOME%/webapps/your app name/WEB-INF/lib" mi_running="false" />
</TASK>
</PACKAGE>
</ARCHIVE>
If you create the xml correctly, this will definitely solve your problem
Best Regards
Sivakumar -
How to include 3rd party jar package in the native code aiming to generate ane for android
in my native java code,i need to reference a class in another jar package.Simply to say,i want to make use of member functions of a class of some jar package A in the call function of the native class which have implemented the FREFunction class.To generate the native extension,native java code needs to be compiled to a jar package B.i have tried serveral methods to compile jar package A into B.Howerver my flex project failed to proceed when calling function of package A in the call function of native java code.To be sure of the correctness of the package A and B,i referenced them in a java project with main function and succeeded. at the same time my other call functions of classes impemented FREFunction work well,Then, why did i fail referencing package A?
in the discussion http://forums.adobe.com/message/3965757, i found the same problem,but i was unable to get a workaround,can anybody give me same help?Standard Java does not support jars within other jars.
Either re-architect your stuff so jars in jars is eliminated, or write a custom classloader that can load from them, or look into 3rd-party solutions, which you can find by searching the net and these forums. -
Two 3rd party jars share common class, signed differently
hi,
i have struck a problem where a SecurityException is thrown because two third party jars that are signed contain a class common to a package.
Jar A:
com.sun.xml.util.XmlChars
Jar B:
com.sun.xml.util.XmlChars
com.sun.xml.util.MessageCatalog
com.sun.xml.util.SomethingSomething
I can't touch Jar A, but Jar B can be edited. Since the security granularity seems to be a package level according to the error message, deleting XmlChars from Jar B doesn't work since both jars still contain classes from the same package.
Jar B does need the MessageCatalog so I can't remove it. I can only think of two options from here
1) find a Jar signed by the A people (JAXB) that contains the extra classes
2) some clever trick with classloaders - but I'm not sure what the issues are here..
any help would be deeply appreciated,
thanks,
asjf2) some clever trick with classloaders - but I'm not sure what the issues are here..well, just loading class B and its associates in a new classloader is allowing this to work. I think this is safe too. Would be interested if anyone knows more about this area - eg. what if B needed to access something in A or vice versa, or both ways simultaneously?
thanks,
asjf -
Problems with newer version of Netbeans
I get an error message when executing an application written using Netbeans 3.3.2 in the newer version of Netbeans. It says it can't find the servlet that is used.
What should be changed to get it to work with the newer version of Netbeans and why does it work in an older version of Netbeans and not the new version?!!!
The exact error message was:
The requested resource (/servlet/controller/EndUsers/Search) is not available.
Thanks
Michaelthis isn't a netbeans problem...
this rather seems to be a problem of packages that can be found or not found.
make sure you have all the correct jars/packages mounted..
try to recompile it first! -
Where to place 3rd party jars for use with SSPI
I have a question regarding the SSPI. Our custom sspi uses some third party jars
for things such as persistence and caching. Our problem is that the sspi jar
file that is placed in the mbeantypes directory relies on some of these jars,
therefore they must be available at startup. However since we will be installing
the sspi on several different Weblogic 8 servers I do not want to modify each
startup script to explicitly include each jar in the classpath.
Is there a place or a best practice that we can use to allow the sspi find these
libraries? Note: we tried the JAVA_HOME/jre/lib/ext directory which does not
seem to work.You will need to have them in the classpath
Tony
"tobin" <[email protected]> wrote in message
news:40882da6$[email protected]..
>
I have a question regarding the SSPI. Our custom sspi uses some thirdparty jars
for things such as persistence and caching. Our problem is that the sspijar
file that is placed in the mbeantypes directory relies on some of thesejars,
therefore they must be available at startup. However since we will beinstalling
the sspi on several different Weblogic 8 servers I do not want to modifyeach
startup script to explicitly include each jar in the classpath.
Is there a place or a best practice that we can use to allow the sspi findthese
libraries? Note: we tried the JAVA_HOME/jre/lib/ext directory which doesnot
seem to work.
Maybe you are looking for
-
Using XSLT 2.0 in Web gallery engine
Hello,<br /><br />I would like to use XSLT 2.0 for web album output files creation (converting XML to index.html for example)<br /><br />I would like to take advantage of the new features in XSLT 2.0. Does Lightroom supports XSLT 2.0? If not, is ther
-
hi all, The softkeys varies form device to device.so kidly say some genric way to handle softkey events. Thanks in advance Badri
-
Import and export in linux.
hi can anyone guide me how to import and export dump files in Red Hat linux 5.2? also i searched over the ineternet but i did not understand because i am newbie to linux. can anyone help me out and guide me step by step? i also posted on Database-Gen
-
View Pdf in Firfox using Adobe plug-in doesn't always work
Hi, I'm using Firefox 21 and it's up to date. My OS is win 7 and it's up to date. When I try some links to pdf files, I can view them in Firefox using the Adobe plug-in. Other pdf file links will make firefox ask me if I want to open using Adobe Acro
-
Help!!!! motu 828 not working under 10.4.3
i have a motu 828 external firewire soundcard - and it stopped working after upgrading to os 10.4.3!!!!! anyone got any advice regarding this problem? the motu pages don't refer to this problem and i can't find anyone having the same problem... the m