Problems running servlet due to missing classes?
Hi everyone,
I am doing a project which requires me to convert a java coding into a servlet. This java coding I am working on is some kind of location based service which tracks people (receiving an argument of a string as IP). It imports an external SDK called Ekahau SDK (some off the shelve product). Now I wish to convert it into a servlet so that the function that the java coding performs can be run from a webpage i created.
I have previously posted a thread on this forum called "Converting java coding into servlets?" when I had trouble compiling the servlet. Now that I could compile the servlet already, I still have problems running the servlet from my browser.
The webserver I am using is Apache Tomcat. Previously I was trying Apache HTTP server but since now I need to use servlet, I have shifted to Tomcat instead. I have been getting these "java.lang.NoClassDefFoundError:" when running the servlet from the browser. From the previous thread, I got suggestions from the replies saying that I need to put the jar files I need into my "C:\Tomcat\webapps\try\WEB-INF\lib" directory. I have been looking for the missing jar files from the internet and putting them into my "C:\Tomcat\webapps\try\WEB-INF\lib", but each time after adding a new jar file, I get another new "java.lang.NoClassDefFoundError:". Are the missing jar files really the problems? Cause it seems a bit weird to me that I need some many jar files which I dont even know why I need them for.
The HTTP status 500 error look like this:
description
The server encountered an internal error () that prevented it from fulfilling this request.
exception
javax.servlet.ServletException: Servlet execution threw an exception
root cause
java.lang.NoClassDefFoundError: org/apache/excalibur/configuration/CascadingConfiguration
com.ekahau.G.N.A(Unknown Source)
com.ekahau.G.N.<init>(Unknown Source)
com.ekahau.sdk.imp.yax.D.<init>(Unknown Source)
com.ekahau.sdk.imp.yax.E.connect(Unknown Source)
com.ekahau.sdk.PositioningEngine.connect(Unknown Source)
coreservlets.testing.find(testing.java:75)
coreservlets.testing.doGet(testing.java:36)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
Here are the series of jar files I have been looking from the internet to add them into my "C:\Tomcat\webapps\try\WEB-INF\lib" directory:
1) org/apache/commons/collections/Closure
2) org/apache/log4j/Logger
3) org/apache/commons/lang/Validate
4) org/apache/excalibur/configuration/CascadingConfiguration
Please help~~ Thanks a lot.
My servlet coding is like this:
package coreservlets;
import java.io.*;
import java.util.*;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.ekahau.sdk.*;
public class testing extends HttpServlet
String ipAddress;
int result;
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
ipAddress = request.getParameter("deviceIP");
try
result = find();
catch (IOException e)
System.out.println("Error..." + e.toString());
catch (EngineException e)
System.out.println("Error..." + e.toString());
response.setContentType("text/html");
PrintWriter write = response.getWriter();
write.println("<HTML>\n" +
"<HEAD><TITLE>Tryget</TITLE></HEAD>\n" +
"<BODY BGCOLOR=\"#FDF5E6\">\n" +
result +
"</BODY></HTML>");
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
doGet(request, response);
public int find() throws EngineException, IOException
PositioningEngine.connect();
// Find the given device:
Device[] devices = PositioningEngine.findDevice("NETWORK.IP-ADDRESS", ipAddress);
if (devices.length == 0)
System.err.println("Device with IP address " + ipAddress + " not found.");
PositioningEngine.disconnect();
return 0;
else
TrackedDevice device = new TrackedDevice(devices[0]);
// Create a simple handler for locations for one-time usage:
LocationEstimateListener estimateListener = new LocationEstimateListener()
public void handleLocationEstimate(LocationEstimate locationEstimate, TrackedDevice device)
// Change getLatestLocation to getAccurateLocation if you want
// a bit more accurate but a few seconds delayed location.
Location loc = locationEstimate.getLatestLocation();
final double coX = loc.getX();
final double coY = loc.getY();
try{
FileWriter file = new FileWriter ("C:\\Documents and Settings\\xamule\\Desktop\\Testing\\output\\output.txt");
String x = Double.toString(coX);
String y = Double.toString(coY);
String coor = x + "\t" + y;
file.write(coor);
file.close();
catch (IOException e){
System.out.println("Error..." + e.toString());
StatusListener statusListener = new StatusListener()
public void handleStatus(Status status, TrackedDevice device)
System.err.println(new Date()+"\tStatus for device: " + status);
// Add listeners and start tracking
device.addLocationEstimateListener(estimateListener);
device.addStatusListener(statusListener);
device.setTrackingParameter("EPE.LOCATION_UPDATE_INTERVAL","6000");
device.setTracking(true);
// Wait until user inputs something. When he/she does, stop tracking and quit application
//BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
//in.readLine();
// Stop tracking and disconnect from the positioning engine:
device.setTracking(false);
PositioningEngine.disconnect();
return 1;
}
Well, it's kind of logical that as you put more jar files (classes) in Tomcat, it changes the error to ask for the classes (inside a jar) it cannot find.
There was a good class->jar finder on the internet some years ago, but i don't remember the address. Try looking for that and search all the missing classes (NotDefined) and their correspondig jar files.
Good Luck!
Similar Messages
-
Failure running IP due to missing entry in RSSDBATCH
I am getting failures of some IPs due to the fact that there is no entry in table RSSDBATCH for the IP.
The IPs are set to 'Start Data load immediately', it is the first time these IPs have been run on this system. I have tried DataSource replication and reactivation of transfer rules and this has made no difference.
We are on SAP NetWeaver 2004s.
Can anyone help?
Thanks
GillWell, it's kind of logical that as you put more jar files (classes) in Tomcat, it changes the error to ask for the classes (inside a jar) it cannot find.
There was a good class->jar finder on the internet some years ago, but i don't remember the address. Try looking for that and search all the missing classes (NotDefined) and their correspondig jar files.
Good Luck! -
Problem running servlet using PJA tools
Hi
I am trying to run the TeksSurveyPie servlet from the PJA Package.But everytime i run it says
Internal error: Unexpected error condition thrown (java.lang.NoClassDefFoundError: TeksSurveyPie (wrong name: com/eteks/servlet/TeksSurveyPie),TeksSurveyPie (wrong name: com/eteks/servlet/TeksSurveyPie)), stack: java.lang.NoClassDefFoundError: TeksSurveyPie (wrong name: com/eteks/servlet/TeksSurveyPie)
at java.lang.ClassLoader.defineClass0(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:495)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:110)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:251)
at java.net.URLClassLoader.access$1(URLClassLoader.java:217)
at java.net.URLClassLoader$1.run(URLClassLoader.java:198)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:192)
at java.lang.ClassLoader.loadClass(ClassLoader.java:300)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:290)
at java.lang.ClassLoader.loadClass(ClassLoader.java:256)
at java.lang.ClassLoader.findSystemClass(ClassLoader.java:629)
at com.iplanet.server.http.servlet.NSServletLoader.findClass(NSServletLoader.java:152)
at com.iplanet.server.http.servlet.NSServletLoader.loadClass(NSServletLoader.java:108)
at com.iplanet.server.http.servlet.NSServletEntity.load(NSServletEntity.java:337)
at com.iplanet.server.http.servlet.NSServletEntity.update(NSServletEntity.java:173)
at com.iplanet.server.http.servlet.NSServletRunner.Service(NSServletRunner.java:427)
I am tryin to access the servlet like this
https://avenger/servlet/TeksSurveyPie?survey=Yes
Pls tell me where i am going wrong...????Its preety urgent ....
thanks
prabhuthe servlet is as below for reference .....
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.ServletException;
import javax.servlet.ServletConfig;
import javax.servlet.UnavailableException;
import java.io.IOException;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.OutputStream;
import java.util.Properties;
import java.util.Vector;
import java.util.Enumeration;
import java.util.Hashtable;
import java.util.StringTokenizer;
import java.awt.Graphics;
import java.awt.Color;
import java.awt.Frame;
import java.awt.AWTError;
import java.awt.Image;
import java.awt.image.FilteredImageSource;
import Acme.JPM.Encoders.GifEncoder;
import com.eteks.filter.Web216ColorsFilter;
import com.eteks.awt.servlet.PJAServlet;
* This servlet manages in a simple way a dynamic survey and returns the pie of the survey.
* It can be called in either ways :
* <UL><LI><code>.../servlet/com.eteks.servlet.TeksSurveyPie?survey=mySurvey&answer=myAnswer</code>
* adds the answer <code>myAnswer</code> to the survey <code>mySurvey</code>,
* and then returns the pie of the current state of <code>mySurvey</code>.
* <LI><code>.../servlet/com.eteks.servlet.TeksSurveyPie?survey=mySurvey</code>
* simply returns the pie of the current state of <code>mySurvey</code>.</UL>
* <P>To be platform independant, the servlet uses <code>com.eteks.awt.servlet.PJAServlet</code> as super class,
* to have at disposal an image into which graphics operation can be performed.<BR>
* <code>com.eteks.awt.PJAServlet</code> class and depending classes of <code>com.eteks.awt</code> packages
* must be in the servlet engine classpath, and at least one .pjaf font file (Pure Java AWT Font) must exist
* in the user directory or in the directory set in the <code>java.awt.fonts</code> system property,
* if JVM version <= 1.1.<BR>
public class TeksSurveyPie extends PJAServlet
Properties surveysParam = new Properties ();
String fontsDir = ""; // Default value for "java.awt.fonts" .pjaf fonts directory initParameter
String surveysFile = fontsDir + File.separator + "survey.txt"; // Default value for survey file initParameter
// Colors used to fill the pie
final Color colors [] = {Color.blue,
Color.green,
Color.red,
Color.cyan,
Color.magenta,
Color.gray,
Color.yellow,
Color.pink,
Color.orange,
Color.white};
final Color penColor = Color.black;
public void initPJA (ServletConfig config) throws ServletException
// Store the ServletConfig object and log the initialization
super.initPJA (config);
// Retrieves surveys file path
String param = getInitParameter ("surveysFile");
if (param != null)
surveysFile = param;
param = getInitParameter ("fontsDir");
if (param != null)
fontsDir = param;
FileInputStream in = null;
try
in = new FileInputStream (surveysFile);
surveysParam.load (in);
catch (IOException e)
{ } // Empty properties
finally
try
if (in != null)
in.close ();
catch (IOException ex)
public void destroyPJA ()
try
surveysParam.save (new FileOutputStream (surveysFile), "Survey file");
catch (IOException e)
{ } // Properties can't be saved
public String getFontsPath ()
return super.getFontsPath () + File.pathSeparator
+ fontsDir;
public void doPostPJA (HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
doGetPJA (request, response);
public void doGetPJA (HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException
String survey = request.getParameter ("survey"); // Survey name
String answer = request.getParameter ("answer"); // Proposed answer
String paramWidth = request.getParameter ("width");
String paramHeight = request.getParameter ("height");
int width = paramWidth == null ? 200 : Integer.parseInt (paramWidth);
int height = paramHeight == null ? 100 : Integer.parseInt (paramHeight);
// v1.1 : Changed code to enable image creation
// even if PJAToolkit couldn't be loaded by Toolkit.getDefaultToolkit ()
Image image = createImage (width, height);
if (survey == null)
survey = "";
if (answer != null)
String key = survey + "_" + answer;
String value = surveysParam.getProperty (key);
if (value != null)
// If the answer already exists, increase its value
surveysParam.put (key, String.valueOf (Integer.parseInt (value) + 1));
else
String surveyAnswers = surveysParam.getProperty (survey);
// Add this answer to the other ones
if (surveyAnswers == null)
surveysParam.put (survey, answer);
else
surveysParam.put (survey, surveyAnswers + "," + answer);
surveysParam.put (key, "1");
Hashtable answers = new Hashtable ();
Vector sortedAnswers = new Vector ();
synchronized (surveysParam)
String surveyAnswers = surveysParam.getProperty (survey);
if (surveyAnswers != null)
for (StringTokenizer tokens = new StringTokenizer (surveyAnswers, ",");
tokens.hasMoreTokens (); )
String token = tokens.nextToken ();
int answerCount = Integer.parseInt (surveysParam.getProperty (survey + "_" + token));
answers.put (token, new Integer (answerCount));
// Seek the good place to insert this element
int i;
for (i = 0; i < sortedAnswers.size (); i++)
if (answerCount > ((Integer)answers.get (sortedAnswers.elementAt (i))).intValue ())
break;
sortedAnswers.insertElementAt (token, i);
// Compute the pies of the survey
drawSurveyPies (image, answers, sortedAnswers, width, height);
// Send generated image
sendGIFImage (image, response);
* Generates a GIF image on the response stream from image.
public void sendGIFImage (Image image, HttpServletResponse response) throws ServletException, IOException
// Set content type and other response header fields first
response.setContentType("image/gif");
// Then write the data of the response
OutputStream out = response.getOutputStream ();
try
new GifEncoder (image, out).encode ();
catch (IOException e)
// GifEncoder may throw an IOException because "too many colors for a GIF" (> 256)
// were found in the image
// Reduce the number of colors in that case with Web216ColorsFilter basic filter
new GifEncoder (new FilteredImageSource (image.getSource (),
new Web216ColorsFilter ()),
out).encode ();
out.flush ();
private void drawSurveyPies (Image image,
Hashtable answers,
Vector sortedAnswers,
int width,
int height)
Graphics gc = image.getGraphics ();
// Draw a shadow
gc.setColor (penColor);
gc.fillOval (1, 1, height - 3, height - 3);
gc.fillOval (2, 2, height - 3, height - 3);
// Compute the sum of all values
int sum = 0;
for (Enumeration e = answers.elements ();
e.hasMoreElements (); )
sum += ((Integer)e.nextElement ()).intValue ();
for (int accum = 0, i = 0, deltaY = 0; i < sortedAnswers.size (); i++, deltaY += 15)
int answerValue = ((Integer)answers.get (sortedAnswers.elementAt (i))).intValue ();
int startAngle = accum * 360 / sum;
int angle = answerValue * 360 / sum;
// Fill the anwser pie
gc.setColor (colors [i % colors.length]);
gc.fillArc (0, 0, height - 3, height - 3, startAngle, angle);
// Draw a separating line
gc.setColor (penColor);
gc.drawLine ((height - 3) / 2, (height - 3) / 2,
(int)((height - 3) / 2. * (1 + Math.cos (startAngle / 180. * Math.PI)) + 0.5),
(int)((height - 3) / 2. * (1 - Math.sin (startAngle / 180. * Math.PI)) + 0.5));
accum += answerValue;
if (deltaY + 15 < height)
// Add a comment
gc.setColor (colors [i % colors.length]);
gc.fillRect (height + 6, deltaY + 1, 13, 10);
gc.setColor (penColor);
gc.drawRect (height + 5, deltaY, 14, 11);
// Draw is done with default font
gc.drawString (String.valueOf (100 * answerValue / sum) + "% " + (String)sortedAnswers.elementAt (i),
height + 22, deltaY + 9);
gc.drawLine ((height - 3) / 2, (height - 3) / 2, height - 3, (height - 3) / 2);
// Draw a surrounding oval
gc.drawOval (0, 0, height - 3, height - 3);
Thx
prabhu -
Missing class: JCA Adapter
Hi!
I tried to insert a record in a database using Database Adapter and BPEL process and i got the next error:
<bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part
name="code"><code>null</code>
</part><part
name="summary"><summary>file:/opt/oracle/app/oracle/product/soa10.1.3.1/bpel/domains/default/tmp/.bpel_PruebaFlujo_1.2_19fece4afb1609f65136dfc5b9b2a17c.tmp/writeDB.wsdl
[ writeDB_ptt::merge(TrUsuarioCollection) ] - WSIF JCA Execute of
operation 'merge' failed due to: Adapter Framework unable to create
outbound JCA connection.
file:/opt/oracle/app/oracle/product/soa10.1.3.1/bpel/domains/default/tmp/.bpel_PruebaFlujo_1.2_19fece4afb1609f65136dfc5b9b2a17c.tmp/writeDB.wsdl
[ writeDB_ptt::merge(TrUsuarioCollection) ] - : The Adapter Framework
was unable to establish an outbound JCA connection due to the
following issue: ORABPEL-12529
ManagedConnectionFactory problem.
Could not instantiate ManagedConnectionFactory
oracle.tip.adapter.db.DBManagedConnectionFactory due to:
Missing class:
oracle.tip.adapter.db.DBManagedConnectionFactory
Dependent class: oracle.tip.adapter.fw.wsdl.WSDLUtils
Loader: oracle.bpel.common:10.1.3
Code-Source:
/opt/oracle/app/oracle/product/soa10.1.3.1/bpel/lib/orabpel.jar
Configuration: <code-source> in
/opt/oracle/app/oracle/product/soa10.1.3.1/j2ee/home/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the
Class.forName() method.
The missing class is not available from any code-source or loader in
the system.
Please make sure the corresponding JCA Resource Adapter has been deployed.
; nested exception is:
ORABPEL-12511
Adapter Framework unable to create outbound JCA connection.
file:/opt/oracle/app/oracle/product/soa10.1.3.1/bpel/domains/default/tmp/.bpel_PruebaFlujo_1.2_19fece4afb1609f65136dfc5b9b2a17c.tmp/writeDB.wsdl
[ writeDB_ptt::merge(TrUsuarioCollection) ] - : The Adapter Framework
was unable to establish an outbound JCA connection due to the
following issue: ORABPEL-12529
ManagedConnectionFactory problem.
Could not instantiate ManagedConnectionFactory
oracle.tip.adapter.db.DBManagedConnectionFactory due to:
Missing class:
oracle.tip.adapter.db.DBManagedConnectionFactory
Dependent class: oracle.tip.adapter.fw.wsdl.WSDLUtils
Loader: oracle.bpel.common:10.1.3
Code-Source:
/opt/oracle/app/oracle/product/soa10.1.3.1/bpel/lib/orabpel.jar
Configuration: <code-source> in
/opt/oracle/app/oracle/product/soa10.1.3.1/j2ee/home/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the
Class.forName() method.
The missing class is not available from any code-source or loader in
the system.
Please make sure the corresponding JCA Resource Adapter has been deployed.
Please examine the log file for any reasons. Enable DEBUG logging in
the BPEL Console.
</summary>
</part><part name="detail"><detail>null</detail>
</part></bindingFaultAny idea?Hey
check your connection factories
make sure you have all the required libraries in your classpath
most probably that you are missing some libraried ..
give a try and see what happens ;) -
Oracle AppsAdaptor causing Missing class error
Hi
Can any one help with the error we are encountering below. We have a production process that uses an Oracle Apps adaptor to call one of the supplied Oracle API's to insert data into the fnd_flex_values table from a BPEL process. Originally the adaptor was working but recently it stopped working when inserting records causing the errors below.
<bindingFault xmlns="http://schemas.oracle.com/bpel/extension"><part name="summary"><summary>file:/nas/orasoft/delta/product/10.1.3/soaas/bpel/domains/default/tmp/.bpel_InsertProjectCodesOracle_1.4_6f5863e8891810138c841b2d8fbe166b.tmp/InsertFlexValues.wsdl [ InsertFlexValues_ptt::InsertFlexValues(InputParameters,OutputParameters) ] - WSIF JCA Execute of operation 'InsertFlexValues' failed due to: Could not instantiate InteractionSpec oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec due to:
Missing class: oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec
Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
Loader: oracle.bpel.common:10.1.3
Code-Source: /nas/orasoft/delta/product/10.1.3/soaas/bpel/lib/orabpel.jar
Configuration: <code-source> in /nas/orasoft/delta/product/10.1.3/soaas/j2ee/oc4j_soa/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
The missing class is not available from any code-source or loader in the system.; nested exception is:
oracle.classloader.util.AnnotatedClassNotFoundException:
Missing class: oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec
Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
Loader: oracle.bpel.common:10.1.3
Code-Source: /nas/orasoft/delta/product/10.1.3/soaas/bpel/lib/orabpel.jar
Configuration: <code-source> in /nas/orasoft/delta/product/10.1.3/soaas/j2ee/oc4j_soa/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
The missing class is not available from any code-source or loader in the system.; nested exception is:
org.collaxa.thirdparty.apache.wsif.WSIFException: Could not instantiate InteractionSpec oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec due to:
Missing class: oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec
Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
Loader: oracle.bpel.common:10.1.3
Code-Source: /nas/orasoft/delta/product/10.1.3/soaas/bpel/lib/orabpel.jar
Configuration: <code-source> in /nas/orasoft/delta/product/10.1.3/soaas/j2ee/oc4j_soa/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
The missing class is not available from any code-source or loader in the system.; nested exception is:
oracle.classloader.util.AnnotatedClassNotFoundException:
Missing class: oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec
Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
Loader: oracle.bpel.common:10.1.3
Code-Source: /nas/orasoft/delta/product/10.1.3/soaas/bpel/lib/orabpel.jar
Configuration: <code-source> in /nas/orasoft/delta/product/10.1.3/soaas/j2ee/oc4j_soa/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
The missing class is not available from any code-source or loader in the system.</summary>
</part><part name="detail"><detail>org.collaxa.thirdparty.apache.wsif.WSIFException: Could not instantiate InteractionSpec oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec due to:
Missing class: oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec
Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
Loader: oracle.bpel.common:10.1.3
Code-Source: /nas/orasoft/delta/product/10.1.3/soaas/bpel/lib/orabpel.jar
Configuration: <code-source> in /nas/orasoft/delta/product/10.1.3/soaas/j2ee/oc4j_soa/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
The missing class is not available from any code-source or loader in the system.; nested exception is:
oracle.classloader.util.AnnotatedClassNotFoundException:
Missing class: oracle.tip.adapter.soa_erp.AppsStoredProcedureInteractionSpec
Dependent class: oracle.tip.adapter.fw.wsif.jca.WSIFOperation_JCA
Loader: oracle.bpel.common:10.1.3
Code-Source: /nas/orasoft/delta/product/10.1.3/soaas/bpel/lib/orabpel.jar
Configuration: <code-source> in /nas/orasoft/delta/product/10.1.3/soaas/j2ee/oc4j_soa/config/server.xml
This load was initiated at orabpel.root:0.0.0 using the Class.forName() method.
The missing class is not available from any code-source or loader in the system.</detail>
</part></bindingFault>Hi,
This issue occurs if any tag is missing in one of the following files
oc4-ra.xml
application.xml
server.xml
check manually in oc4j-ra.xml and server.xml if any tags are missing particularly <connector-factory> tag
%ORACLE_HOME%\j2ee\oc4j_soa\application-deployments\default\ AppsAdapter\oc4j-ra.xml if any tag is missing.
once modified restart oc4j server and test
Regards,
Deepa -
"Missing Class" error when running web service
Hi,
I am getting an "Missing Class" error when running a web service. The web service was generated from a Java class via the "create J2EE web service" option.
The web service has a JAX-RPC handler class added, which belongs to the same package as a logging class. The logging class is used to write to a file for debug purposes. A "missing class" error is being generated whenever I attempt to invoke the web service (via the enterprise manager test util), the error refers to the logging class which is used by the main handler class. The JAX-RPC handler works fine by itself, the error is only seen when I attempt to use the logging class.
I have re-built, re-deployed from scratch again, but still get the same error! Am I missing something simple here?
thanks for any adviceCant you paste some of your code, formatted in code tags? It looks like there is a problem passing some of the XMl response, it doesnt like a tag html.
If you post some code somebody might actually be able to help you. -
Hi,
We are using JDeveloper 10.1.3.0.4(SU5) on windows for development of ADF application. We need to deploy the developed application onto Oracle Application Server 10g (10.1.3) which is running on Solaris. We are using BC4J, WAR and EAR deployment profiles in jdeveloper to create the .war and .ear files.
If I deploy the generated ear on a standalone OC4J server install on my windows PC, it works fine.
Now when I deploy the generated .ear file onto the Oracle Application Server 10.1.3 through Application Server Control interface and then try to access the jspx pages under our application we are getting following error:
oracle.classloader.util.AnnotatedNoClassDefFoundError: Missing class: javax.servlet.jsp.jstl.core.Config Dependent class: com.sun.faces.application.ViewHandlerImpl Loader: accaweb.web.accaweb:0.0.0 Code-Source: /oracle/app/oracle/product/10gas3/j2ee/home/applications/accaweb/accaweb/WEB-INF/lib/jsf-impl.jar Configuration: WEB-INF/lib/ directory in /oracle/app/oracle/product/10gas3/j2ee/home/applications/accaweb/accaweb/WEB-INF/libThe missing class is available from the following locations: 1. Code-Source: /oracle/app/oracle/product/10gas3/j2ee/home/default-web-app/WEB-INF/lib/jstl.jar (from WEB-INF/lib/ directory in /oracle/app/oracle/product/10gas3/j2ee/home/default-web-app/WEB-INF/lib) This code-source is available in loader default.web.defaultWebApp:0.0.0. at oracle.classloader.PolicyClassLoader.handleClassNotFound (PolicyClassLoader.java:2051) [oracle/app/oracle/product/10gas3/j2ee/home/lib/pcl.jar (from system property java.class.path), by sun.misc.Launcher$AppClassLoader@1482257]
I have confirmed that the .war file inside the .ear file does contain the jstl.jar file under WEB-INF/lib folder. And the jar file does contain the class 'javax.servlet.jsp.jstl.core.Config'
As a workaround, I found that if I copy the jstl.jar file from default-web-app to my application web-inf/lib folder, things start to work fine. ie copy from: '/oracle/app/oracle/product/10gas3/j2ee/home/default-web-app/WEB-INF/lib/jstl.jar'
to: '/oracle/app/oracle/product/10gas3/j2ee/home/applications/accaweb/accaweb/WEB-INF/lib/'
– or –
Another workaround is to add the '/oracle/app/oracle/product/10gas3/j2ee/home/default-web-app/WEB-INF/lib/jstl.jar' file in the classpath for my web application through Application Server Control setting page.
Now both of these workaround needs us to perform additional post deployment steps which should really not be required since the jar files is included in the project.
Has anyone faced this issue? Any pointers in this respect will be a great help.
regards - rutwikSurprise Surprise !
I just tried deploying the file via uploading it from the Application Server Control UI and it worked fine.
Till now, I was ftp'ing the ear file from my PC to the server on which Oracle AS is running and was telling Application Server Control to pick form that uploaded location.
I am still not clear on why it works with HTTP upload and not via the FTP upload?
cheers - rutwik -
Having problem running a servlet program in Tomcat5.5
Hi,
I wrote a sample servlet, HelloWorld.java and I compiled it and put the .class file in the WEB-INF\Classes directory in the Tomcat directory. Now when I do this,
http://localhost:8080/ it's working fine but when I do this, http://localhost:8080/servlet/HelloWorld I am getting an error message "*HTTP Status 404"*.
I have done no changes to web.xml and server.xml. Should I be doing anything?
My HelloWorld.Java file is as below.
package Users.Ravi.Desktop.CurrentProject.Servlets;
import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
public class HelloWorld extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
PrintWriter out = response.getWriter();
out.println("Hello World");
}Thanks.Ah, I see the problem now. You need to put servlet class as
<code class="jive-code jive-java">Users.Ravi.Desktop.CurrentProject.Servlets.HelloWorld</code>
<code class="jive-code jive-java">So, your web.xml will have</code>
<servlet>
<servlet-name>HelloWorld</servlet-name>
<servlet-class></code><code class="jive-code jive-java">Users.Ravi.Desktop.CurrentProject.Servlets.HelloWorld</code><code class="jive-code jive-java"></servlet-class>
</servlet>{code} -
XML mapping inheritance problem; missing class indicator field
Hi!
I am currently working on a project which involves mapping a large domain model on a XSD schema. For this we use Toplink 10.1.3.1 which is mostly great. But now I have a problem while wanting to use class inheritance.
In my XSD I have the following defined
<xs:complexType name="Traject">
<xs:sequence>
<xs:element name="SoortTraject" type="SoortTraject"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SpecialTraject">
<xs:complexContent>
<xs:extension base="Traject">
<xs:sequence>
[some elements]
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>My XML is an implementation of this XSD and looks like this
<Trajecten>
<Traject xsi:type="SpecialTraject">
[implementation of the elements]
</Traject>
</Trajecten>My domain model corresponts to the XSD, so there is a Traject object and an inherited SpecialTraject object.
In the mapping I used the Advanced properties->inheritance on both descriptors telling the Traject descriptor that it was the 'Root Parent Descriptor' ('Use class indicator field' -> 'use XML Schema Type attribute', 'Use class indicator dictionary') and the SpecialTraject what it Child Descriptor was ('Traject').
When I test my mapping it always results in the same error (no matter how I configure this inheritance mapping). It says :
[TOPLINK-44] missing class indicator field
Descriptor: XMLDescriptor(Traject --> [])What am I doing wrong? Does anybody know a sollution?
Best regards,
Jouke Stoel
DeveloperThis is the changed XML descriptor file. When I deploy the file it automaticly overrides the old file so it ain't possible that I was still using the wrong file
<toplink:class-indicator-mappings>
<toplink:class-indicator-mapping>
<toplink:class>Traject</toplink:class>
<toplink:class-indicator xsi:type="xsd:string">Traject</toplink:class-indicator>
</toplink:class-indicator-mapping>
<toplink:class-indicator-mapping>
<toplink:class>SpecialTraject</toplink:class>
<toplink:class-indicator xsi:type="xsd:string">SpecialTraject</toplink:class-indicator>
</toplink:class-indicator-mapping>
</toplink:class-indicator-mappings>I have posted the stacktrace but I had to translate a bit because my exception was in Dutch :)
Locale is a great invention
Exception [TOPLINK-44] (Oracle TopLink - 10g Release 3 (10.1.3.1.0) (Build 061004)): oracle.toplink.exceptions.DescriptorException
Exception description: Missing class indicator field of database row [UnmarshalRecord()].
Descriptor: XMLDescriptor(Traject --> [])
at oracle.toplink.exceptions.DescriptorException.missingClassIndicatorField(DescriptorException.java:887)
at oracle.toplink.internal.ox.QNameInheritancePolicy.classFromRow(QNameInheritancePolicy.java:84)
at oracle.toplink.internal.ox.XMLRelationshipMappingNodeValue.processChild(XMLRelationshipMappingNodeValue.java:13)
at oracle.toplink.internal.ox.XMLCompositeCollectionMappingNodeValue.startElement(XMLCompositeCollectionMappingNodeValue.java:62)
at oracle.toplink.ox.record.UnmarshalRecord.startElement(UnmarshalRecord.java:352)
at oracle.xml.parser.v2.NonValidatingParser.parseElement(NonValidatingParser.java:1288)
at oracle.xml.parser.v2.NonValidatingParser.parseRootElement(NonValidatingParser.java:336)
at oracle.xml.parser.v2.NonValidatingParser.parseDocument(NonValidatingParser.java:303)
at oracle.xml.parser.v2.XMLParser.parse(XMLParser.java:205)
at oracle.toplink.internal.ox.record.SAXUnmarshaller.unmarshal(SAXUnmarshaller.java:189)
at oracle.toplink.internal.ox.record.SAXUnmarshaller.unmarshal(SAXUnmarshaller.java:147)
at oracle.toplink.ox.XMLUnmarshaller.unmarshal(XMLUnmarshaller.java:228)
. -
Hi,
I use Tomcat 5.5.17 to run servlets. I can run the example servlets that come with Tomcat successfully. I have configured the java_home and class path variables. When I create a new servlet in the webapps/servlets-examples folder, I can run it.
However, when I try creating a new folder under webapps (named trial) and when I try to run my servlet from there I get the 404 Servlet not found error.
The steps I followed are:
1.Created a new folder trial under C:\apache-tomcat 5.5.17\webapps
2.Created the WEB_INF folder under trial and then the classes folder under it.
3. Put my servlet HelloServlet.class under the classes folder.
4.Put WEB.XML under the C:\apache-tomcat 5.5.17\webapps\trial\WEB_INF folder and made the following entry
<servlet>
<servlet-name>HelloServlet</servlet-name>
<servlet-class>HelloServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloServlet</servlet-name>
<url-pattern>/HelloServlet</url-pattern>
</servlet-mapping>
5. I tried to access my servlet using the following URL:
http://localhost:8080/trial/HelloServlet
and that gives the 404 error.
Are there any additional steps when we are running a servlet a folder we create?
I searched the internet and found something about setting the context path but I could not understand how to do it for Tomcat 5.5.17 as the documents I found on the net were for older versions.
I would be grateful if someone could help me out. Thanks in advance!
Aniticipating your help!
Thanks and Regards,
AsanaHi.. You can check your application context path through Tomcat Manager application.
URL is :
http://localhost:8080/manager/list
or
http://localhost:8080/manager/html/list -
UNIX: problem running an DEV & QA environment using form/report servlets
UNIX: problem running an DEV & QA environment using form/report servlets
I am trying to setup on one server an DEV and QA environment using the Forms Servlet, Forms Listener Servlet and Report Servlet.
I think I have the Forms Servlet and Forms Listener Servlet running properly. The problem is setting up the DEV and QA environment for running reports.
For example, when in DEV environment I would like to run a report from a directory specified in the REPORTS60_PATH. This doesn't seem possible.
It might be easier if I describe my configuration first:
DEV: run all forms and reports from the directory /data/release/dev
QA: run all forms and reports from the directory /data/release/qa
---DEV & QA Settings Forms Listener Servlet:
zone.properties:
# DEV
servlet.fl60dev.code=oracle.forms.servlet.ListenerServlet
servlet.fl60dev.initArgs=EnvFile=/u01/app/oracle/product/ias/6iserver/forms60/server/dev.env
# QA
servlet.fl60qa.code=oracle.forms.servlet.ListenerServlet
servlet.fl60qa.initArgs=EnvFile=/u01/app/oracle/product/ias/6iserver/forms60/server/qa.env
---DEV & QA Settings Forms Servlet:
servlet.f60servlet.code=oracle.forms.servlet.FormsServlet
--- Settings for Reports Servlet:
servlet.RWServlet.code=oracle.reports.rwcgi.RWServlet
Custom Env files since we are using Developer 6i Patch 7
dev.env and qa.env
Here I specify FORMS60_PATH and REPORTS60_PATH,
eg: DEV -> FORMS60_PATH=/data/release/dev
REPORTS60_PATH=/data/release/dev
likewise for QA ../qa
In the formsweb.cfg file i have something like:
[dev]
serverURL=/servlet/fl60dev
form=test.fmx
[qa]
serverURL=/servlet/fl60dev
form=test2.fmx
I have tested the following and they work without problems:
1. forms listener test page, eg: http://webserver:7777/servlet/fl60dev
2. running forms from the 2 environments
eg: http://webserver:7777/servlet/f60servlet?config=dev
this runs the form in the FORMS60_PATH (/data/release/dev)
Now my problems start with Reports.
When I run a report from forms (using run_report_object) it will not run any reports
as specified in the REPORTS60_PATH
Even using this url:
http://webserver:7777/servlet/RWServlet?server=rep60&report=test.rdf&destype=cache&desformat=html&
userid=scott/tiger@test9i
It NEVER seems to pickup and use the REPORTS60_PATH. I have tried nearly everything.
I have gone throught the instructions in "Integrating Oracle9iAS Reports in Oracle9iAS Forms -
White Paper"
(http://otn.oracle.com/products/forms/pdf/277282.pdf)
and Forms6i Patch 7: Oracle Forms Listner Servlet for Deployment of FOrms on the Internet
(http://otn.oracle.com/products/forms/pdf/p7listenerservlet.pdf)
plus any other documents in metalink relating to forms, or report servlets. I am
totally confused, please help.
I have tried setting the REPORTS60_PATH in the following files without success:
custom.env (as specified by initArgs=EnvFile in zone.properties)
jserv.properties
in the zone.properties I have tried to set a custom env file for the report servlet:
servlet.RWServlet.code=oracle.reports.rwcgi.RWServlet
servlet.RWServlet.initArgs=EnvFile=/u01/app/oracle/product/ias/6iserver/forms60/server/dev_rep.env
NO LUCK.
The only place that I can set the REPORTS60_PATH
is in "[6iserver home]/reports60_server" file when I start the reports server (did I even
get this right - I do have to have a reports server running don't I?)
Does this meaan I have to run multiple report servers for each of my environments?
Based on all the documentation I thought that REPORTS60_PATH as specified in the files relating
to the forms servlet would be the place to specify the path.
As you will understand I am getting really fustrated with this and it seems to
me that the reports servlet configuration in 6i is really half baked and since 9i
is coming out it will never be fixed.I am even not able to run forms servlets from two different forms60_path, Is there any configuration do you make other than what you have mentioned in this post.
I already open a TAR in this regard, I am still waiting reply from ORACLE.
Thanks,
Shaik Ather Ahmed -
getting the message while installing cs 6 trial
-installer failed to initialize.this could be due to missing file.please download adobe support adviser to detect problem.
please helpError "Installer Failed to Initialize" | Install desktop application | Windows
-
Can not open dreamweaver due to missing menu.xml file, how do I fix this problem?
Can not open dreamweaver due to missing menu.xml file, how do I fix this problem?
@alicia - We have seen such issues before
Allow me to quote David Powers from http://forums.adobe.com/thread/1192197
The menus.xml file is normally in your personal configuration folder. Before going to the trouble of reinstalling, try deleting your configuration folder. Details of how to find it are here: http://forums.adobe.com/thread/494812.
When you launch Dreamweaver, it should build a new configuration folder. -
On some sites we get sec_error_unknown_issuer SSL error due to missing root certificate TC TrustCenter Class 2 L1 CA XI. Firefox is the only browser having this issue. Why is that certificate not preinstalled and shipped with Firefox?
Check sales.sauer-danfoss.com for details with Firefox 7.
Thanks
StefanYou are not sending the TC TrustCenter Class 2 L1 CA XI intermediate certificate
*http://sales.sauer-danfoss.com/
Web servers need to send all required intermediate certificates to build the chain to build-in root certificates.
You need to install that intermediate certificate on your server.
*http://www.trustcenter.de/en/infocenter/root_certificates.htm#3479
You can test the certificate chain via a site like this:
*http://www.networking4all.com/en/support/tools/site+check/ -
Hi All,
Due to attribute change run (SID's is missing) process chain is failed.kindly suggest me how we can rectify for this issue.
Thanks
Ragavif master data is loading at same time while the attr/hier change run is occuring,it cause the change run to fail.
Usually u get error message like..user ALEREMOTE has locked the MD tables..
Wait for some time and then try attr change run manually by going to rsa1->tools->apply hier/attr change..
if it still shows locked..try to see in rsmo if a MD load has got stuck..
else..see in sm12 to find lock is on which tables..
last resort..delete lock forcefully from sm12..
first option is wait for some time and give a try again..
cheers,
Vishvesh
Maybe you are looking for
-
Hi OBIEE Experts, I have few query's in OBIEE(10.1.3.4.1) version. I have install OBIEE (10.1.3.4.1) successfully in AIX server, I had configured SSO successfully in the same server. I have done scheduler configuration also then i am able to start ./
-
If a power cord shorts out, can it affect my Macbook Pro?
I have my 2009 macbook pro 13" plugged in, then suddenly it turns itself off and needs to be restarted using the power button, and when it shuts down, the power cord seems to 'die' too. I think the power cord might be shorting out. Could this be? Cou
-
Accessing BPEL Variables in XSLT
Hi All, In a BPEL PM process I need to be able to access a global BPEL process variable in the XSL transformation. When I use any functions in the "Transform" activity I do not see the BPEL variables in scope. Any idea on how can this can be done ? R
-
The new I tunes is terrible!! HELP??
Firstly, am I forced to upgrade and not have the option to go back to the old way? I hate the new format, and I've also noticed that I am now prevented from doing things that made the old itunes so user friendly. For example itunes artwork that cant
-
Ok. I must be missing something here... I purchased and downloaded the 3 ISOs for sol 9. They were burned via NERO on XP.....and they were successful burns. While I can view and browse all the CD contents on ANY pc, I cannot boot off of the CDs! (I w