Try adding the jars in the jboss-minimal.xml file.
Main Topics
Browse All TopicsHi Experts,
I have deployed a hello world servlet in jboss and is working fine. now I deployed a dfc program in jboss and though it is deployed properly when i try to run it, i get the following error:
2009-05-21 17:24:48,333 WARN org.jboss.jbossweb: WARNING: Error for /auth-servlet/authenticate
java.lang.NoClassDefFoundE
at java.lang.Class.getDeclare
at java.lang.Class.privateGet
at java.lang.Class.getConstru
at java.lang.Class.newInstanc
at java.lang.Class.newInstanc
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.http.HttpConte
at org.mortbay.jetty.servlet.
at org.mortbay.http.HttpConte
at org.mortbay.http.HttpServe
at org.jboss.jetty.Jetty.serv
at org.mortbay.http.HttpConne
at org.mortbay.http.HttpConne
at org.mortbay.http.HttpConne
at org.mortbay.http.SocketLis
at org.mortbay.util.ThreadedS
at org.mortbay.util.ThreadPoo
(PoolThread-8)
My classpath entries (solaris machine):
/appl/documentum/share/dct
tum/share/dfc/dfcbase.jar:
Please let me know where can i be wrong?
Thanks
This Question has been solved and asker verified All Experts Exchange premium technology solutions are available to subscription members.
Experts Exchange has been collecting answers to technology questions since 1996…3 million and counting! If you have a question, chances are we already have your answer.
If you can't find the exact answer you're looking for, ask our exclusive community of 50,000 experts. You’ll get a personalized answer from a trusted professional.
Thousands of free tech tips, tricks, how-to’s and tutorials are available in our peer reviewed articles section. See for yourself how smart our experts are, no login required.
Access the answers to your technology questions today.
30-day free trial. Register in 60 seconds.
Members of the expert community talk about why the experience at Experts Exchange is different than what you will find anywhere else.

Try it out and discover for yourself.
30-day free trial. Register in 60 seconds.
Join the community of experts here and help other tech pros by answering question in your area of expertise. You can earn FREE access to all Experts Exchange's premium features and resources.
Hi
I added the jars in auth-servlet.war/WEB-INF/l
HTTP ERROR: 500 com/documentum/fc/connecto
Excertps from server.log file:
2009-05-23 14:01:12,100 WARN org.jboss.jbossweb: WARNING: Error for /auth-servlet/authenticate
java.lang.NoClassDefFoundE
at com.documentum.com.DfClien
at com.wyeth.dctm.authenticat
at com.wyeth.dctm.authenticat
at com.wyeth.dctm.authenticat
at javax.servlet.http.HttpSer
at javax.servlet.http.HttpSer
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.http.HttpConte
at org.mortbay.jetty.servlet.
at org.mortbay.http.HttpConte
at org.mortbay.http.HttpServe
at org.jboss.jetty.Jetty.serv
at org.mortbay.http.HttpConne
at org.mortbay.http.HttpConne
at org.mortbay.http.HttpConne
at org.mortbay.http.SocketLis
at org.mortbay.util.ThreadedS
at org.mortbay.util.ThreadPoo
(PoolThread-8)
2009-05-23 14:01:47,461 INFO STDOUT: Login servlet called (PoolThread-8)
2009-05-23 14:01:47,466 INFO STDOUT: true (PoolThread-8)
If you see the log you will get that my login servlet is called, but instead of getting output as '1', I am getting the error message as described at the top of this comment.
Also, Please let me k now how to add jars in jboss-minimal.xml file.
Thanks
put dfc.properties into auth-servlet.war/WEB-INF/c
if you still have issues with the dmcl40 error. go through the dfc install guide and make sure you have your dmcl40.dll or .so configured correctly with the os's env variables.
for instance, LD_LIBRARY_PATH needs to have the path to the shared dfc.
This should all be detailed in the dfc installation guide.
Let me know how it goes.
Hi
I put dfc.properties into auth-servlet.war/WEB-INF/c
LD_LIBRARY_PATH is set to : /appl/documentum/fulltext/
entum/share/IndexAgents/ft
So what do you think now?
Thanks
the dfc guide states that the following should be in LD_LIBRARY_PATH (via the set_dctm_env.sh file) :
$DOCUMENTUM_SHARED/dfc and $JAVA_HOME/jre/lib/i386/cl
do those directories exist in your LD_LIBRARY_PATH? The dfc installation guide contains a table (table 1) that shows all of the environmental variables that need to be configured. make sure you follow this to correctly install the documentum foundation classes.
another thing to checkout is if your system is looking for a file named dmcl40.so when the installed file is named libdmcl40.so. If this is the case, you'll have to create a copy of the file with the new name.
Look into how your app server sets the jvm's local java.library.path variable. You might try to override this. Look to the run.sh file to see if there is a -Djava.library.path option being set that is overriding.
Browse powerlink for more information, but these appear to be the solutions to most people's issues.
Hi Experts,
Please check the output of my env command:
bash-3.00$ env
HZ=100
SHELL=/bin/csh
TERM=ansi
FASTSEARCH=/appl/documentu
LC_ALL=C
USER=dmadmin2
LD_LIBRARY_PATH=/appl/docu
/dfc:/appl/documentum/shar
LIBPATH=/appl/documentum/f
pl/documentum/share/IndexA
MAIL=/var/mail/dmadmin2
PATH=/usr/local/bin:./:/us
PWD=/appl/documentum
JAVA_HOME=/appl/documentum
DOCUMENTUM_SHARED=/appl/do
TZ=GMT
SHLVL=1
HOME=/appl/documentum
LOGNAME=dmadmin2
CLASSPATH=/appl/documentum
pl/documentum/share/dfc/df
ocumentum/share/config:/ap
SHLIB_PATH=/appl/documentu
/appl/documentum/share/Ind
DOCUMENTUM=/appl/documentu
_=/usr/bin/env
It's still not working.
Thanks
few things:
1. are you sure that your DOCUMENTUM_SHARED is /appl/documentum/share ? is there a dfc directory under /share? I've always seen it as shared and there is a shared/dfc directory. There is a /share, but that's not where all of the shared files live.
2. did you attempt to chance the filename from libdmcl40.so to dmcl40.so
3. did you verify that jboss isn't setting its own java.library.path var? in the run.sh there could be a property on the java command like -Djava.library.path= and that could be overriding your environmental settings. Try to manually put your paths in there.
Also, review the dfc installation guide because it still appears that your dfc (specifically your dmcl access) is installed incorrectly for your server.
**If none of these work, you should create a webapp that outputs the java.library.path from within your webapp context so you can see exactly what is being used. Then you can figure out where it's being set.
Hi
Find my servlet code,
After compiling the code on the linux machine, I am getting error " http 503 sevlet not initialized"
package com.wyeth.dctm.authenticat
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletExcep
import javax.servlet.http.HttpSer
import javax.servlet.http.HttpSer
import javax.servlet.http.HttpSer
import com.documentum.com.DfClien
import com.documentum.com.IDfClie
import com.documentum.fc.client.I
import com.documentum.fc.client.I
import com.documentum.fc.common.D
import com.documentum.fc.common.D
import com.documentum.fc.common.I
public class AuthenticationServlet extends HttpServlet
{
public AuthenticationServlet()
{
}
protected boolean authenticate(String strUserName,String strPassword,String strDocbase) {
boolean isAuthenticated=true;
IDfClientX clientX=null;
IDfClient client=null;
IDfLoginInfo loginInfo=null;
IDfSession session=null;
clientX=new DfClientX();
try {
client=clientX.getLocalCli
loginInfo=clientX.getLogin
loginInfo.setUser(strUserN
loginInfo.setPassword(strP
session=client.newSession(
if (session==null) {
isAuthenticated=false;
return isAuthenticated;
}
else {
isAuthenticated=session.ge
}
System.out.println("User Authenticated");
}
catch (DfException dfEx) {
DfLogger.debug(this,"Unabl
System.out.println("User Not Authenticated::" + dfEx.toString());
isAuthenticated=false;
}
finally {
System.out.println(isAuthe
}
return isAuthenticated;
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException
{
String strUserName=null;
String strPassword=null;
String strDocbase=null;
System.out.println("Login servlet called");
response.setContentType("t
response.setHeader("Cache-
strPassword = request.getParameter("pass
strUserName = request.getParameter("logi
strDocbase = request.getParameter("doma
if( authenticate(strUserName,s
{
PrintWriter out = response.getWriter();
out.println("1");
} else
{
PrintWriter out = response.getWriter();
out.println("0");
}
}
public boolean isUserInRole(String strRole,String strUserName) {
return false;
}
public void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
doPost(req, resp);
}
}
Thanks
Hi
I think I am very near to closing this problem. I modified my run.sh file for java.libray.path to include the necessary path and now I am getting the following error:
2009-05-26 16:27:23,755 INFO STDOUT: Login servlet called..... (PoolThread-8)
2009-05-26 16:27:23,755 INFO STDOUT: /appl/documentum/fulltext/
2009-05-26 16:27:23,755 INFO STDOUT: got parameters from browser (PoolThread-8)
2009-05-26 16:27:23,755 INFO STDOUT: calling getLocalClient... (PoolThread-8)
2009-05-26 16:27:23,756 INFO STDOUT: calling getLoginInfo... (PoolThread-8)
2009-05-26 16:27:23,756 INFO STDOUT: setting username... (PoolThread-8)
2009-05-26 16:27:23,756 INFO STDOUT: setting password... (PoolThread-8)
2009-05-26 16:27:23,756 INFO STDOUT: creating session... (PoolThread-8)
2009-05-26 16:27:23,756 INFO STDOUT: true (PoolThread-8)
2009-05-26 16:27:23,757 WARN org.jboss.jbossweb: WARNING: Error for /auth-servlet/authenticate
java.lang.UnsatisfiedLinkE
at com.documentum.fc.connecto
at com.documentum.fc.connecto
at com.documentum.fc.client.D
at com.documentum.fc.client.D
at com.wyeth.dctm.authenticat
at com.wyeth.dctm.authenticat
at com.wyeth.dctm.authenticat
at javax.servlet.http.HttpSer
at javax.servlet.http.HttpSer
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.jetty.servlet.
at org.mortbay.http.HttpConte
at org.mortbay.jetty.servlet.
at org.mortbay.http.HttpConte
at org.mortbay.http.HttpServe
at org.jboss.jetty.Jetty.serv
at org.mortbay.http.HttpConne
at org.mortbay.http.HttpConne
at org.mortbay.http.HttpConne
at org.mortbay.http.SocketLis
at org.mortbay.util.ThreadedS
at org.mortbay.util.ThreadPoo
(PoolThread-8)
Can you please look into it and let me know what I did is wrong or not, I have checked the DFC installation is fine as I am able to run simple dfc program that establishes a session, only when I try to run this DFC program as a servlet that I get error.
Thanks
The comments, if could have been more easy to understand. ie. instead of saying overwrite the java.libary.path, if you could have expalined why I need to overwrite since I have already set my classpath to the required variable , and even overwrite is not a good word here, you could have used the word add or something like that, I could have got it easily. so basically this request was raised on 21st and could have been resolved in 1 day. But it took around 6 days to get to the solution, even though the solution was already hinted in the very first comment.
Bottomline: please be more easy and explaining in your comments that will save the time of both and give excellent results.
Anyways thank a lot
Business Accounts
Answer for Membership
by: Rsulliv1Posted on 2009-05-21 at 20:47:53ID: 24447647
What happens when you put the dfc.jar into the <webapp>/WEB-INF/lib directory and reload the webapp?
It appears that you have the dfc.jar in the default installation location, but it also must be available to the jvm running the webapp. That would typically be in the jboss classpath or the webapp's classpath.