This week's giveaway is in the JDBC forum.
We're giving away four copies of Java Database Connections & Transactions (e-book only) and have Marco Behler on-line!
See this thread for details.
Win a copy of Java Database Connections & Transactions (e-book only) this week in the JDBC forum!
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Devaka Cooray
  • Knute Snortum
  • Paul Clapham
  • Tim Cooke
Sheriffs:
  • Liutauras Vilda
  • Jeanne Boyarsky
  • Bear Bibeault
Saloon Keepers:
  • Tim Moores
  • Stephan van Hulst
  • Ron McLeod
  • Piet Souris
  • Frits Walraven
Bartenders:
  • Ganesh Patekar
  • Tim Holloway
  • salvin francis

JNI Probelm with Oracle iPlanet 7.0.9 Web Server  RSS feed

 
Greenhorn
Posts: 9
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Our application was working fine with Oracle iPlanet 6.0 version.Now as we have upgraded our application to new Oracle iPlanet Web server 7.0.9, almost all the application are working except for one functionality which does a password reset. This piece of functionality is using JNI in java code. The password reset functionality is using native library file.

When the webapp is deployed on Oracle iPlanet Web Server 7.0.9, running on Solaris 10 in a 64bit environment, one element of the webapp is not working.
we were using libNSServletPlugin.so file in magnus.conf@iplanet 6.0 to call Netscape API for our application.Where as in new magnus.conf@iplanet 7.0 has the library libJ2eePlugin.so.
So we are currently facing problem while invoking Netscape API from our application.

After some debugging we have narrowed down our application problem to a simple client application.


We have made some debugging and analysis and found some observation which I want to put into your notice


#### Steps of Analysis ####

1) We stopped both iPlanet 6.0/7.0 version and the Netscape server
2) We are not using any webservice calls from the iPlanet
3) We have made one sample Test Java application which directly calls to Transact API made in C++ through JNI
4) We have noticed that the Test Java application is working with reference to JRE ( usr/iplanet/servers/bin/https/jre)

5) Below is the output(success) while running the test application with JRE ( usr/iplanet/servers/bin/https/jre) i.e JRE 1.2.2 version

ksh txclient.sh_iplanet6

/usr/java/lib/classes.zip:
/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/lib/TxShared.jar:
/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/lib/TxServer.jar:
/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/classes:.

java version "1.2.2"
Solaris VM (build Solaris_JDK_1.2.2_10, native threads, sunwjit)
IsAlive.txIsAlive: Entered CTxCommand base class constructor
Leaving CTxCommand base class constructor

Error Code: 0
Error Message: Transact is alive
Retryable: false


IsAlive[TxIsAliveResponse]: Error Code: 0
Error Message: Transact is alive
Retryable: false


6) Now here is the output(failure) while running the same Test application with JRE ( /opt/oracle/webserver7/jdk ) i.e JRE 1.6.0_20


ksh txclient.sh_iplanet6


/usr/java/lib/classes.zip:
/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/lib/TxShared.jar:
/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/lib/TxServer.jar:
/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/classes:.

java version "1.6.0_20"
Java(TM) SE Runtime Environment (build 1.6.0_20-b02)
Java HotSpot(TM) Server VM (build 16.3-b01, mixed mode)
IsAlive.txIsAlive: Entered CTxCommand base class constructor
Leaving CTxCommand base class constructor
Run-time exception error; current exception: RWSockErr
No handler for exception.
txclient.sh_iplanet6[34]: 16858 Abort(coredump)
 
Sachidananda Pattnaik
Greenhorn
Posts: 9
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
###### txClient_iPlanet6.txt #########

#!/bin/ksh
IPLIB=/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/lib
IPCLASS=/usr/iplanet/servers/docs/web-apps/SOAP/WEB-INF/classes

CLASSPATH=$CLASSPATH:$IPLIB/xerces-1_4_4.jar
CLASSPATH=$CLASSPATH:$IPLIB/soap-2_2.jar
CLASSPATH=$CLASSPATH:$IPLIB/mail.jar
CLASSPATH=$CLASSPATH:$IPLIB/TxShared.jar
CLASSPATH=$CLASSPATH:$IPLIB/TxServer.jar
CLASSPATH=$CLASSPATH:$IPLIB/activation.jar
CLASSPATH=$CLASSPATH:/$IPCLASS
CLASSPATH=$CLASSPATH:.
export CLASSPATH


echo ""
echo $CLASSPATH
echo ""

JAVA=/usr/iplanet/servers/bin/https/jre/bin/java

$JAVA -version
$JAVA com.reuters.espresso.webserviceclient.TxClient



###### txClient_iPlanet7.txt #########

#!/bin/ksh
IPLIB=/opt/oracle/webserver7/docs/web-apps/SOAP/WEB-INF/lib
IPCLASS=/opt/oracle/webserver7/docs/web-apps/SOAP/WEB-INF/classes

CLASSPATH=$CLASSPATH:$IPLIB/xerces-1_4_4.jar
CLASSPATH=$CLASSPATH:$IPLIB/soap-2_2.jar
CLASSPATH=$CLASSPATH:$IPLIB/mail.jar
CLASSPATH=$CLASSPATH:$IPLIB/TxShared.jar
CLASSPATH=$CLASSPATH:$IPLIB/TxServer.jar
CLASSPATH=$CLASSPATH:$IPLIB/activation.jar
CLASSPATH=$CLASSPATH:/$IPCLASS
CLASSPATH=$CLASSPATH:.
export CLASSPATH


echo ""
echo $CLASSPATH
echo ""

JAVA=/opt/oracle/webserver7/jdk/bin/java

$JAVA -version
$JAVA com.reuters.espresso.webserviceclient.TxClient

 
He's dead Jim. Grab his tricorder. I'll get his wallet and this tiny ad:
how do I do my own kindle-like thing - without amazon
https://coderanch.com/t/711421/engineering/kindle-amazon
  • Post Reply Bookmark Topic Watch Topic
  • New Topic
Boost this thread!