Weblogic 10 jsp compliation thread block problem
hi
i am using weblogic 10 and jdk1.5.
My application is deployed in ear format, with 2 wars, and 20 ejbs.
The ear works ok with weblogic 8.1.
In the application , one war passes the request to another war, that's the workflow....
Now when the request is passed on the second war, a jsp is supposed to open....but the application get stuck there.
The call is like this in a servlet....
reqDisp = req.getRequestDispatcher("/newIndex.jsp");
reqDisp.forward(req, res);
The new index jsp is not opened....there is no problem with it it comiples ok....i check with weblogic appc...and it is working on weblogic 8.1.
when i stop the server...the log gives me following exception info.
"ExecuteThread: '12' for queue: 'default'" daemon prio=6 tid=0x2b8edad0 nid=0xc1
0 in Object.wait() [0x2da1e000..0x2da1fb64]
at java.lang.Object.wait(Native Method)
- waiting on <0x07f94608> (a javelin.client.JobWaiter)
at java.lang.Object.wait(Object.java:474)
at javelin.client.JobWaiter.blockUntilFinished(JobWaiter.java:45)
- locked <0x07f94608> (a javelin.client.JobWaiter)
at javelin.client.ClientUtilsImpl.build(ClientUtilsImpl.java:838)
at weblogic.servlet.jsp.JavelinxJSPStub.compilePage(JavelinxJSPStub.java:248)
at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:200)
at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:164)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:235)
- locked <0x07ef8220> (a weblogic.servlet.jsp.JavelinxJSPStub)
at weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:391)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:309)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:503)
at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:245)
at LCDisplayController.handleProcessing(Unknown Source)
at DisplayControllerServlet.doPost(Unknown Source)
at DisplayControllerServlet.doGet(Unknown Source) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:226)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:124)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
at weblogic.servlet.internal.RequestDispatcherImpl.invokeServlet(RequestDispatcherImpl.java:503)
at weblogic.servlet.internal.RequestDispatcherImpl.forward(RequestDispatcherImpl.java:245)
at com.orbitech.workflow.servlet.WFAppListController.openWorkitem(WFAppListController.java:793)
at com.orbitech.workflow.servlet.WFAppListController.processRequest(WFAppListController.java:102)
at com.orbitech.workflow.servlet.WFAppController.doProcessRequest(WFAppController.java:97)
at com.orbitech.workflow.servlet.WFAppController.doGet(WFAppController.java:64) at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
i think the there is thread blocking and the jsp is not getting compiled or smthing....
i am unable to understnd the exception....
any help, suggestion ? thanks in advance.
We are using jBPM and Hibernate in our application which runs fine on other java application servers. On Weblogic we were getting an error:
org.hibernate.HibernateException: Errors in named queries: GraphSession...........
By adding:
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
to our weblogic.xml, Weblogic used our Hibernate3 and antl-2.7.6 .jar files which resolved this issue but created multiple CompilationException errors in many .jsp's. (as follows)
Error 500--Internal Server Error
weblogic.servlet.jsp.CompilationException: Failed to compile JSP /WEB-INF/jsp/struts/dashboards/portfolio_chart.jsp
portfolio_chart.jsp:1:1: The validator class: "org.apache.taglibs.standard.tlv.JstlCoreTLV" has failed with the following exception: "java.lang.ClassCastException: weblogic.xml.jaxp.RegistrySAXParserFactory".
<%@ taglib uri="/jstl-core" prefix="c" %>
^---------------------------------------^
portfolio_chart.jsp:1:1: The validator class: "com.primavera.pvweb.taglib.JSMessageTagLibraryValidator" has failed with the following exception: "java.lang.ClassCastException: weblogic.xml.jaxp.RegistrySAXParserFactory".
<%@ taglib uri="/jstl-core" prefix="c" %>
^---------------------------------------^
at weblogic.servlet.jsp.JavelinxJSPStub.compilePage(JavelinxJSPStub.java:298)
at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:216)
at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:165)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:235)
at weblogic.servlet.internal.ServletStubImpl.onAddToMapException(ServletStubImpl.java:394)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:309)
Is this a Weblogic bug ?
Similar Messages
-
Thread Problem - (Thread Blocking Problems?)
Hi Friends
In my program while using thread i found a problem in this code .
In this whlie running the 'msg' was printen only after all 5 inputs are given .
why i was not getting output after one input.why the thread out was waiting for remaining threads input.
my code is
import java.io.*;
class MyThread extends Thread
BufferedReader bin;
MyThread()
super();
start();
public void run()
try
bin=new BufferedReader(new InputStreamReader(System.in));
String msg=bin.readLine();
System.out.println(msg);
catch(IOException e)
System.out.println(e);
public class Threads
public static void main(String args[])
for(int i=0;i<5;i++)
new MyThread();
}Hi Friends
In my program while using thread i found a problem
em in this code .
In this whlie running the 'msg' was printen only
after all 5 inputs are given .
why i was not getting output after one input.why
hy the thread out was waiting for remaining threads
input.Probably because of how the scheduler was rotating among the threads while waiting for input and queueing up output.
When you call readLine, that thread blocks until a line is available. So it probably goes to the next thread's readLine, and so on. All threads are probably blocked waiting for input before you enter a single character.
Something inside the VM has to coordinate the interaction with the console, and between that and your threads, the out stuff just doesn't get a chance to display right away.
In general, you can't predict the order of execution of separate threads. -
I Have a multithread application which:
- access to database
- write files
- read files
- execute external process using exec
What considerations should I take in order to avoid Threads Blocking? When Thread blocking occurs how can I know what is the cause?
Thanks!
Thttp://www.ibm.com/developerworks/library/j-thread.html
- Saish -
Mule, Weblogic and MQ JMS : deadlock problem
Dear Oracle community,
We are hosting our Mule ESB (3.1) application on a Weblogic 10.3 (11g) server and are using IBM Websphere MQ's JMS solution (with libraries version 7.0.1.7).
The problem we are facing is that JMS connections are created by one of Weblogic's worker (thread) and the close() method for those connections are not necessarily called by the same thread.
This is bad because from what I know this behavior is undefined from JMS specification
(see http://docs.oracle.com/cd/E15051_01/wls/docs103/jms/design_best_practices.html#wp1061413 ) and it is a blocker issue in our case because this lead to a deadlock.
Do someone has any idea how to enforce the fact that the same thread do create and close the connection through Weblogic and/or Mule configuration (without re-implementing the connector) ?
Thanks in advance for your help,
Best regards,
Y.
PS : I've already posted this question on Mule ESB's forum : http://forum.mulesoft.org/mulesoft/topics/mule_weblogic_and_mq_jms_deadlock_problem
Edited by: user7428803 on May 14, 2012 2:26 PMI hope you found a solution by now, but as an FYI:
* The JMS specification specifically requires that JMS providers support the ability to call connection.close() and session.close() from an arbitrary thread even when another thread is making calls on these objects. It furthermore goes into some detail about the expected behavior of these calls. The best practices link you cited alludes to this: "The JMS Specification states that multi-threading a session, producer, consumer, or message method results in undefined behavior +except when calling close().+"
* Depending on your use case, you may not need to use Mule to integrate MQ with WebLogic. WebLogic supports a variety of options for integrating MQ directly without the use of third party tooling. See http://download.oracle.com/docs/cd/E17904_01/web.1111/e13727/interop.htm .
Tom -
Parsing in Weblogic/jsp doesn't work; application-mode (command-line) works
Hello-
Parsing my XML file in Weblogic/jsp doesn't work, whereas it works
in application-mode... (albeit on two different machines)
Here are the parameters:
server1:
weblogic 6.0
win2k server
jre1.3
my personal machine:
***no weblogic***
win2k server
jre1.3
When I run my code as an application (command-line style) on my machine,
parsing in my xml file works fine, and I can do a root.toString() and it
dumps out the entire xml file, as desired.
However, running my code inside weblogic (on server1) in JSP, parsing in
my file and doing a root.toString() results in the following: [dmui: null]
(where dmui is my root)
(even though i'm running it on two different machines, i'm positive its the
same code (the servers share a mapped drive)...
So, I think its probably because I'm using a different parser, as
specified by weblogic? There are no exceptions being thrown. Here's my
(abbreviated) code, which is called either command line style or in a JSP:
// Imports
import org.w3c.dom.*;
import org.w3c.dom.Document;
import javax.xml.parsers.*;
import javax.xml.parsers.DocumentBuilderFactory;
import javax.xml.parsers.DocumentBuilder;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
DocumentBuilderFactory docBuilderFactory =
DocumentBuilderFactory.newInstance();
DocumentBuilder docBuilder = docBuilderFactory.newDocumentBuilder();
mDocument = docBuilder.parse (inFile);
myRoot.toString()
-END
Doing a System.getProperty("javax.xml.parsers.DocumentBuilderFactory")
results in:
server1 (weblogic/jsp):
"weblogic.apache.xerces.jaxp.DocumentBuilderFactoryImpl"
my machine (application-mode):
null
Does anyone have any ideas about how to get this work? Do I try to set it
up so that they both use the same parser? Do I change the Weblogic parser?
If so, to what? And how?
Am I even close?
Any help would be appreciated..
Thanks, Clint
"[email protected]" <[email protected]> wrote in message
news:[email protected]...
No problem, glad you got it worked out :)
~Ryan U.
Jennifer wrote in message <[email protected]>...
I completely missed setting the property(:-o), foolish mistake. That wasit. Thanks.
"j.upton" <[email protected]> wrote:
Jennifer,
Personally I would get rid of import com.sun.xml.parser.* and use xerces
which comes with WLS 6.0 now, unless like I said earlier you have a need
to
use the sun parser :) Try something like this with your code --I've put
things to watch for as comments in the code.
import javax.xml.parsers.*;
import org.xml.sax.SAXException;
import org.w3c.dom.*;
import java.io.FileInputStream;
public class BasicDOM {
public BasicDOM (String xmlFile) {
try{
FileInputStream inStream;
Document document;
/*You must specify a parser for jaxp. You can in a simple view
think
of this as being analogous to a driver used by JDBC or JNDI. If you are
using this in the context of a servlet or JSP and have set an XML
registry
with the console this happens automatically. You can also invoke it in
the
context of an application on the command line using the -D switch. */
System.setProperty("javax.xml.parsers.DocumentBuilderFactory",
>>>
"weblogic.apache.xerces.jaxp.DocumentBuilderFactoryImpl");
// create a document factory
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
// specify validating or non-validating parser
dbf.setValidating(true);
// obtain a factory
DocumentBuilder db = dbf.newDocumentBuilder();
// create a document from the factory
inStream = new FileInputStream(xmlFile);
document = db.parse(inStream);
}//try
catch (Exception e)
System.out.println("Unexpected exception reading document!"
+e);
System.exit (0);
}//catch
}//BasicDom
// Main Method
public static void main (String[] args) {
if (args.length < 1)
System.exit(1); file://or you can be more verbose
new BasicDOM(args[0]);
}//class
=============================================
That will give you a basic DOM you can manipulate and parse it fromthere.
BTW this code
compiled and ran on WLS 6.0 under Windows 2000.
Let me know if this helped or you still are having trouble.
~Ryan U.
"Jennifer" <[email protected]> wrote in message
news:[email protected]...
Actually I included com.sun.xml.parser.* as one last febble attempt toget
it working.
And as for source code, I included the code. If I just put that oneline
of code
in, including the imports, it fails giving me an error listed above inthe
subject
line. Here is the code again:
package examples.xml.http;
import javax.xml.parsers.*;
import org.xml.sax.SAXException;
import org.xml.sax.SAXParseException;
import org.w3c.dom.*;
import java.util.*;
import java.net.*;
import org.xml.sax.*;
import java.io.*;
public class BasicDOM {
static Document document;
public BasicDOM (String xmlFile) {
try {
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
} catch (FactoryConfigurationError e){
System.err.println(e.getException());
e.printStackTrace();
// Main Method
public static void main (String[] args) {
BasicDOM basicDOM = new BasicDOM (args[0]);Hi, Rob
Does it work in WL9.2?
It seems I do it exactly as the explained at http://edocs.bea.com/wls/docs81/programming/classloading.html - and it fails :o(.
I try to run my app.ear with WL9.2 There are 2 components in it: webapp and mdb. The webapp/WEB-INF contains weblogic.xml:
<weblogic-web-app>
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
</weblogic-web-app>
Mdb is expected to run in the same mode, i.e. to prefer the webapp/WEB-INF/*.jar over the parent Weblogic classloader. To do so I add the weblogic-application.xml to the app.ear!/META-INF:
<weblogic-application>
<classloader-structure>
<module-ref>
<!-- reminder: this webapp contains
prefer-web-inf-classes -->
<module-uri>webapp</module-uri>
</module-ref>
<classloader-structure>
<module-ref>
<module-uri>mdb.jar</module-uri>
</module-ref>
</classloader-structure>
</classloader-structure>
</weblogic-application>
Now, when classloader-structure specified, both webabb and mdb prefer the weblogic root loader as if prefer-web-inf-classes not defined at all. -
What's the available value for weblogic.jsp.encoding in web application.
Hi,
I'm using chinese windows nt 4.0 and weblogic 5.1 sp6.When I did not set
weblogic.jsp.encoding to GB2312 , when the jsp file contain's chinese , the
output will be error .And when I did not set it , the output is correct, but
when I use request.getParameter("SomeFormElement")(the element inputed
chinese), the return value is error.
How should I set weblogic.jsp.encoding value to satisfy all this problem?
When I set the value to ISO-8859, there is an exception:
java.io.UnsupportedEncodingException: Charset: 'ISO-8859' not recognized,
and there is no alias for it in the weblogic.httpd.charsets property. So
What's the available value for weblogic.jsp.encoding in web application?
Pan
hi ,
i think the best way is to create java beans ,in that bean call your EJB ,
and check the validation over there.
and make that bean scope to session.
in each and everypage try to check the session ,if it is not valid then forward to your login page...
otherwise continue to give access to him like guest
Regards,
AfTaB -
How can WLS use JSP pages in a Web Application (either a .war file or a war directory structure) without a java compiler?
I suspect either the JSP specification is flawed (i.e. it doesn't take account of servers using just a JRE), or BEA's implementation is broken.
Production servers do not have a JDK installed. They only have a JRE. Therfore a java compiler is not present on the machine that the Web Application is deployed onto.
On the development machine, when the server is requested to load the JSP it creates a tmpwar directory within the Web Application directory structure. This is then included in the resultant .war file thus:
D:\war>jar -tf gmi.war
META-INF/
META-INF/MANIFEST.MF
gmiService.jsp
WEB-INF/
WEB-INF/classes/
WEB-INF/classes/com/
WEB-INF/classes/com/bt/
WEB-INF/classes/com/bt/gmi/
WEB-INF/classes/com/bt/gmi/gmiService.class
WEB-INF/getList.xsl
WEB-INF/getListByConnection.xsl
WEB-INF/getListByDistrict.xsl
WEB-INF/getListByDistrictConnection.xsl
WEB-INF/lib/
WEB-INF/source/
WEB-INF/source/build.bat
WEB-INF/source/gmiService.java
WEB-INF/web.xml
WEB-INF/weblogic.xml
tmpwar/
tmpwar/jsp_servlet/
tmpwar/jsp_servlet/_gmiservice.class
tmpwar/jsp_servlet/_gmiservice.java
When deployed on the production server with the web.xml file set to use the following values (note XML stripped):
weblogic.jsp.pageCheckSeconds
-1
weblogic.jsp.precompile
false
weblogic.jsp.compileCommand
javac
weblogic.jsp.verbose
true
weblogic.jsp.packagePrefix
jsp_servlet
weblogic.jsp.keepgenerated
false
And in the weblogic.properties file:
weblogic.httpd.webApp.gmi=war/gmi
I've also tried with the .war file, but that insists on creating another tmpwar directory outside of the .war file.
Then, although I have set pageCheckSeconds to -1 (don't check and don't recompile) ter production server still attempts to recompile the JSP's:
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: init
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param verbose initialized to: true
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param packagePrefix initialized to: jsp_servlet
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param compileCommand initialized to: javac
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param srcCompiler initialized to weblogic.jspc
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param superclass initialized to null
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param workingDir initialized to: /opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param pageCheckSeconds initialized to: -1
Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: initialization complete
Mon Sep 25 11:40:12 BST 2000:<I> <WebAppServletContext-gmi> Generated java file: /opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war/jsp_servlet/gmiService.java
Mon Sep 25 11:40:14 BST 2000:<E> <WebAppServletContext-gmi> Compilation of /opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war/jsp_servlet/gmiService.java failed: Exception in thread "main" java.lang.NoClassDefFoundError: sun/tools/javac/Main
java.io.IOException: Compiler failed executable.exec([Ljava.lang.String;[javac, -classpath, /opt/Solaris_JRE_1.2.1_04/lib/rt.jar:/opt/Solaris_JRE_1.2.1_04/lib/i18n.jar:/opt/Solaris_JRE_1.2.1_04/classes:/var/wls/5.1/weblogic/lib/weblogic510sp4boot.jar:/var/wls/5.1/weblogic/classes/boot:/var/wls/5.1/weblogic/eval/cloudscape/lib/cloudscape.jar:/var/wls/5.1/weblogic/lib/wleorb.jar:/var/wls/5.1/weblogic/lib/wlepool.jar:/var/wls/5.1/weblogic/lib/weblogic510sp4.jar:/var/wls/5.1/weblogic/license:/var/wls/5.1/weblogic/classes:/var/wls/5.1/weblogic/lib/weblogicaux.jar:/opt/wls-servers/gmiServer/weblogic/gmiServer/serverclasses:/opt/wls-servers/gmiServer/weblogic/lotusxsl.jar:/opt/wls-servers/gmiServer/weblogic/xerces.jar:/opt/wls-servers/gmiServer/weblogic/logging.jar::/opt/wls-servers/gmiServer/weblogic/war/gmi/WEB-INF/classes:/opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war, -d, /opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war, /opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war/jsp_servlet/gmiService.java])
at java.lang.Throwable.fillInStackTrace(Native Method)
at java.lang.Throwable.fillInStackTrace(Compiled Code)
at java.lang.Throwable.<init>(Compiled Code)
at java.lang.Exception.<init>(Compiled Code)
at java.io.IOException.<init>(Compiled Code)
at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(Compiled Code)
at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:200)
at weblogic.servlet.jsp.JspStub.compilePage(Compiled Code)
at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:173)
at weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:187)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:118)
at weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java:142)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:744)
at weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImpl.java:692)
at weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContextManager.java:251)
at weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:363)
at weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:263)
at weblogic.kernel.ExecuteThread.run(Compiled Code)
The default Java compiler from sun lives in the tools.jar that comes with
the JDK. Just add that to your set of JARs which are deployed in production
and you should be fine. No need to install the full JDK - just make the
tools.jar available to WebLogic.
Regards
James
James Strachan
=============
email: [email protected]
web: http://www.metastuff.com
"Martin Webb" <[email protected]> wrote in message
news:[email protected]...
>
> How can WLS use JSP pages in a Web Application (either a .war file or a
war directory structure) without a java compiler?
>
> I suspect either the JSP specification is flawed (i.e. it doesn't take
account of servers using just a JRE), or BEA's implementation is broken.
>
> Production servers do not have a JDK installed. They only have a JRE.
Therfore a java compiler is not present on the machine that the Web
Application is deployed onto.
>
> On the development machine, when the server is requested to load the JSP
it creates a tmpwar directory within the Web Application directory
structure. This is then included in the resultant .war file thus:
>
> D:\war>jar -tf gmi.war
> META-INF/
> META-INF/MANIFEST.MF
> gmiService.jsp
> WEB-INF/
> WEB-INF/classes/
> WEB-INF/classes/com/
> WEB-INF/classes/com/bt/
> WEB-INF/classes/com/bt/gmi/
> WEB-INF/classes/com/bt/gmi/gmiService.class
> WEB-INF/getList.xsl
> WEB-INF/getListByConnection.xsl
> WEB-INF/getListByDistrict.xsl
> WEB-INF/getListByDistrictConnection.xsl
> WEB-INF/lib/
> WEB-INF/source/
> WEB-INF/source/build.bat
> WEB-INF/source/gmiService.java
> WEB-INF/web.xml
> WEB-INF/weblogic.xml
> tmpwar/
> tmpwar/jsp_servlet/
> tmpwar/jsp_servlet/_gmiservice.class
> tmpwar/jsp_servlet/_gmiservice.java
>
> When deployed on the production server with the web.xml file set to use
the following values (note XML stripped):
>
> weblogic.jsp.pageCheckSeconds
> -1
>
> weblogic.jsp.precompile
> false
>
> weblogic.jsp.compileCommand
> javac
>
> weblogic.jsp.verbose
> true
>
> weblogic.jsp.packagePrefix
> jsp_servlet
>
> weblogic.jsp.keepgenerated
> false
>
>
> And in the weblogic.properties file:
>
> weblogic.httpd.webApp.gmi=war/gmi
>
> I've also tried with the .war file, but that insists on creating another
tmpwar directory outside of the .war file.
>
>
> Then, although I have set pageCheckSeconds to -1 (don't check and don't
recompile) ter production server still attempts to recompile the JSP's:
>
>
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: init
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param
verbose initialized to: true
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param
packagePrefix initialized to: jsp_servlet
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param
compileCommand initialized to: javac
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param
srcCompiler initialized to weblogic.jspc
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param
superclass initialized to null
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param
workingDir initialized to:
/opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp: param
pageCheckSeconds initialized to: -1
> Mon Sep 25 11:40:11 BST 2000:<I> <WebAppServletContext-gmi> *.jsp:
initialization complete
> Mon Sep 25 11:40:12 BST 2000:<I> <WebAppServletContext-gmi> Generated java
file:
/opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war/jsp_servlet/gmiService.
java
> Mon Sep 25 11:40:14 BST 2000:<E> <WebAppServletContext-gmi> Compilation of
/opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war/jsp_servlet/gmiService.
java failed: Exception in thread "main" java.lang.NoClassDefFoundError:
sun/tools/javac/Main
>
> java.io.IOException: Compiler failed
executable.exec([Ljava.lang.String;[javac, -classpath,
/opt/Solaris_JRE_1.2.1_04/lib/rt.jar:/opt/Solaris_JRE_1.2.1_04/lib/i18n.jar:
/opt/Solaris_JRE_1.2.1_04/classes:/var/wls/5.1/weblogic/lib/weblogic510sp4bo
ot.jar:/var/wls/5.1/weblogic/classes/boot:/var/wls/5.1/weblogic/eval/cloudsc
ape/lib/cloudscape.jar:/var/wls/5.1/weblogic/lib/wleorb.jar:/var/wls/5.1/web
logic/lib/wlepool.jar:/var/wls/5.1/weblogic/lib/weblogic510sp4.jar:/var/wls/
5.1/weblogic/license:/var/wls/5.1/weblogic/classes:/var/wls/5.1/weblogic/lib
/weblogicaux.jar:/opt/wls-servers/gmiServer/weblogic/gmiServer/serverclasses
:/opt/wls-servers/gmiServer/weblogic/lotusxsl.jar:/opt/wls-servers/gmiServer
/weblogic/xerces.jar:/opt/wls-servers/gmiServer/weblogic/logging.jar::/opt/w
ls-servers/gmiServer/weblogic/war/gmi/WEB-INF/classes:/opt/wls-servers/gmiSe
rver/weblogic/war/gmi/_tmp_war, -d,
/opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war,
/opt/wls-servers/gmiServer/weblogic/war/gmi/_tmp_war/jsp_servlet/gmiService.
java])
> at java.lang.Throwable.fillInStackTrace(Native Method)
> at java.lang.Throwable.fillInStackTrace(Compiled Code)
> at java.lang.Throwable.<init>(Compiled Code)
> at java.lang.Exception.<init>(Compiled Code)
> at java.io.IOException.<init>(Compiled Code)
> at
weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(Compiled Code)
> at
weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:200)
> at weblogic.servlet.jsp.JspStub.compilePage(Compiled Code)
> at weblogic.servlet.jsp.JspStub.prepareServlet(JspStub.java:173)
> at
weblogic.servlet.internal.ServletStubImpl.getServlet(ServletStubImpl.java:18
7)
> at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:118)
> at
weblogic.servlet.internal.ServletStubImpl.invokeServlet(ServletStubImpl.java
:142)
> at
weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImp
l.java:744)
> at
weblogic.servlet.internal.ServletContextImpl.invokeServlet(ServletContextImp
l.java:692)
> at
weblogic.servlet.internal.ServletContextManager.invokeServlet(ServletContext
Manager.java:251)
> at
weblogic.socket.MuxableSocketHTTP.invokeServlet(MuxableSocketHTTP.java:363)
> at
weblogic.socket.MuxableSocketHTTP.execute(MuxableSocketHTTP.java:263)
> at weblogic.kernel.ExecuteThread.run(Compiled Code)
>
>
>
-
NoClassDefFoundError: weblogic/jsp
I'm trying to RTFM, but I need a pointer.
I've been asked to 'fix' something, and before I break something to fix it,
I thought to make sure the methods work well. ;-)
I trying to 'java weblogic.jspc filename.jsp' and I trying to get the
java file
so that I can verify that the changes I've made to a copy of the file are
doing
what I think 'it' should do..
well something is wrong on this machine, I'm getting an error
Exception in thread "main" java.lang.NoClassDefFoundError: weblogic/jsp
I've used the verbose mode to track the execution, and it (what ever it is
at this point)
has loaded classes from the rt set of jars.
Am I missing something fundamental? what should I be looking for?
Use the command java -classpath <weblogic class dir>:<dir>/weblogicaux.jar -keep
generated filename.jsp
You say you typed weblogic.jspc, but the error message says weblogic.jsp - somebody's
made a mistake.
Mike
"Kermit Tensmeyer" <[email protected]> wrote:
>I'm trying to RTFM, but I need a pointer.
>
>I've been asked to 'fix' something, and before I break something to fix
>it,
>I thought to make sure the methods work well. ;-)
>
>
>I trying to 'java weblogic.jspc filename.jsp' and I trying to get
>the
>java file
>so that I can verify that the changes I've made to a copy of the file
>are
>doing
>what I think 'it' should do..
>
>well something is wrong on this machine, I'm getting an error
> Exception in thread "main" java.lang.NoClassDefFoundError: weblogic/jsp
>
>I've used the verbose mode to track the execution, and it (what ever
>it is
>at this point)
>has loaded classes from the rt set of jars.
>
> Am I missing something fundamental? what should I be looking for?
>
>
>
-
About weblogic.transaction.AsyncQueue thread
I've got a Solaris 8 prstat CPU usage dump for a Weblogic 6.1 process running EJB's
Evertime I have correlated this prstat dump with the 'Full thread dump' (with the hex 'nid' number), it seems like one thread of the 'weblogic.transaction.AsyncQueue' thread group is using too much cpu power.
"ExecuteThread: '0' for queue: 'weblogic.transaction.AsyncQueue'" daemon prio=5 tid=0x464818 nid=0x24 waiting on monitor [0xe4601000
..0xe46019d8]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at weblogic.kernel.ExecuteThread.waitForRequest(ExecuteThread.java:94)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:118)
Does anybody know what purpose has 'weblogic.transaction.AsyncQueue' thread exactly?
Is there any parameter to tune the operation of this queue?That thread is idle so I doubt it's your problem. I believe the
AsyncQueue handles some internal transaction manager work.
I'm suspicious you're being lead to the wrong thread. I'd suggest
trying one of the Java CPU profilers and seeing what they say.
-- Rob
Daniel Parra wrote:
I've got a Solaris 8 prstat CPU usage dump for a Weblogic 6.1 process running EJB's
Evertime I have correlated this prstat dump with the 'Full thread dump' (with the hex 'nid' number), it seems like one thread of the 'weblogic.transaction.AsyncQueue' thread group is using too much cpu power.
"ExecuteThread: '0' for queue: 'weblogic.transaction.AsyncQueue'" daemon prio=5 tid=0x464818 nid=0x24 waiting on monitor [0xe4601000
..0xe46019d8]
at java.lang.Object.wait(Native Method)
at java.lang.Object.wait(Object.java:420)
at weblogic.kernel.ExecuteThread.waitForRequest(ExecuteThread.java:94)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:118)
Does anybody know what purpose has 'weblogic.transaction.AsyncQueue' thread exactly?
Is there any parameter to tune the operation of this queue? -
Fail over is not happening in Weblogic JSP Server
Hi..
We have 6 Weblogic instances running as application server (EJB) and 4 Weblogic
instances running as web server (JSP). We have configured one cluster for EJB
servers and one cluster for JSP servers. In front-end we are using four Apache
servers to proxy the request to Weblogic JSP cluster. In my httpd.conf file I
have configured with the Weblogic cluster. I can see the requests are going in
all the servers and believe the cluster is working fine in terms of load balancing
(round-robin). The clients are accessing the servers using CSS (Cisco Load Balancer).
But when we test the fail-over in the cluster, we are facing problems. Let me
explain the scenarios of the fail-over test:
1. The load was generated by the Load Generator
2. When the load is there, we shut down one Apache server, even though there was
some failed transaction, immedialty the servers become stable. So fail-over is
happening in this stage.
3. When I shutdown one EJB instance, again after some failed transactions, the
transactions become stable
4. But, when I shutdown one JSP instance, immediately the transaction failed and
it is not able to fail over to another JSP server and the number of failed transactions
increased.
So I guess, there is some problem in the proxy plug-in configuration, so that
when I shutdown one JSP server, still the requests are being send to the JSP server
by the Apache proxy plug-in.
I have read various queries posted in the News Groups and found some information
about configuring session and cookie information in the Weblogic.xml file. Also
I’m not sure what are all the configurations needs to be done in the Weblogic.xml
and httpd.conf file. Kindly help me to resolve the problem. I would appreciate
your response.
===============================================================
My httpd.conf file plug-in configuration:
###WebLogic Proxy Directives. If proxying to a WebLogic Cluster see WebLogic
Documentation.
<IfModule mod_weblogic.c>
WebLogicCluster X.X.X.X1:7001,X.X.X.X2:7001,X.X.X.X3:7001,X.X.X.X4:7001
MatchExpression *.jsp
</IfModule>
<Location /apollo>
SetHandler weblogic-handler
DynamicServerList ON
HungServerRecoverSecs 600
ConnectTimeoutSecs 40
ConnectRetrySecs 2
</Location>
==============================================================
Thanks in advance,
Siva.Hi,
I can see that bug 13703600 is already got fixed in 12.1.2 but still you same problem please raise ticket with oracle support.
Regrds,
Kal -
Weblogic not releasing threads or memory
Actually, making Weblogic do a thread dump helped us find the issue,
our application did not close its LDAP connection threads in all cases, so
that was why its number of threads kept going up. The thread dump option
is a very useful tool for troubleshooting.
Mark Griffith wrote:
>
This is not normal behavior.
This is "unintended object retention", ie a java version of a memory
leak.
So you have a couple of options.
1. Profile your application and after running your test which reproduces
the problem, and running GC see who is holding refs to objects.
2. Do the same as 1.
3. Do the same as 1.
I suggest Jprobe 2.5.
Cheers
Mark G.
In article <[email protected]>, [email protected]
says...
We are runing Weblogic 4.5.1 on SunOS 5.6, with Solaris_JDK 1.2.1_04 and
we have allocated 512 Meg to the heap. We set the ThreadCount to 90.
The threadcount showing in the TOP utility is growing higher and higher,
it never decreases. It is up to 200 at this point. The resident memory
also seems to keep growing and growing, it is at 445M now.
So it looks like resources do not get released. Does anyone know the
solution to this?
Or is this normal behavior?
Joop Kaashoek
==================================================
NewsGroup Rant
==================================================
Rant 1.
The less info you provide about your problem means
the less we can help you. Try to look at the
problem from an external perspective and provide
all the data necessary to put your problem in
perspective. -
Thread blocking on java.nio.charset.CoderResult
Hello all,
I have a multi-threaded app which does some fairly intestive string operations (basically extracts text from documents for indexing a search system).
I am seeing a massive bottleneck around the java.nio.charset.CoderResult class. When profiling, I see a whole stack of threads blocking on (waiting for) a monitor on this java.nio.charset.CoderResult class. Seems to be a result of string encoding/decoding (I am often encoding strings as UTF-8).
Anyone know why the JVM would want my threads to sync on this class? It's creating a huge performance issue for my app. Approximately 15% of ALL the processing time is spent waiting for this class.
Help!I would guess that you're using some of the static methods in the CoderResult class. The static methods CoderResult.unmappableCache(), CoderResult.malformedForLength() and CoderResult.malformedCache all use a static inner class called Cache. Its get() method is synchronized on Cache.class. Since the Cache inner-class is static, any part of your multi-threaded application that goes through the Cache.get() method is going to be waiting for the lock on Cache.class.
Could you create a CoderResult instance for each thread? That would mean that there would be a different static Cache class for each thread, reducing the number of threads competing for the Cache.class lock.
I'd have to see some of your code to give a better answer.
Brian -
Thread blocked in printStackTrace
I find one of my thread blocked in printStackTrace after perform an overload test. But it doesn't wait any java lock. So I don't know what happened.
Part of dumped thread stack looked like this:
"Thread: 553" daemon prio=5 tid=0x00598f68 nid=0x23f runnable [95d7f000..95d7fc28]
at java.lang.Throwable.getStackTraceElement(Native Method)
at java.lang.Throwable.getOurStackTrace(Throwable.java:591)
- locked <0xc423b3a8> (a java.lang.Throwable)
at java.lang.Throwable.printStackTrace(Throwable.java:510)
My application runs on solaris, sparc machine. JVM is 1.4.2_04-b05.Can u pstack the process at this moment? The stacks of all the threads are probably too large to be shown here.
Show the thread #575. i.e. nid = 0x23f, convert to decimal = 575, maybe its stuck in the native portion.
Hope this helps. -
Revision: 12951
Revision: 12951
Author: [email protected]
Date: 2009-12-15 02:17:31 -0800 (Tue, 15 Dec 2009)
Log Message:
Changed synchronized PropertyProxyRegistry#getRegistry method to non-synchronized to avoid threads blocking in message push.
Checkintests: Pass with the usual 3-4 tests that time out with and without this change.
QA: Yes
Doc: No
Modified Paths:
blazeds/trunk/modules/core/src/flex/messaging/io/PropertyProxyRegistry.javaRevision: 12951
Revision: 12951
Author: [email protected]
Date: 2009-12-15 02:17:31 -0800 (Tue, 15 Dec 2009)
Log Message:
Changed synchronized PropertyProxyRegistry#getRegistry method to non-synchronized to avoid threads blocking in message push.
Checkintests: Pass with the usual 3-4 tests that time out with and without this change.
QA: Yes
Doc: No
Modified Paths:
blazeds/trunk/modules/core/src/flex/messaging/io/PropertyProxyRegistry.java -
Weblogic.security.CipherException: Incorrect block length 256 (modulus
Hi,
I have a stand alone java client which runs in the weblogic 8.1 server and when I tried to connect to the external site using the weblogic's HttpsURLConnection ,its throws the below exception.
weblogic.security.CipherException: Incorrect block length 256 (modulus length 128)
<Info> <Security> <BEA-090511> <The following exception has occurred:
weblogic.security.CipherException: Incorrect encrypted block
at weblogic.security.RSApkcs1.decrypt(RSApkcs1.java:205)
at weblogic.security.RSAMDSignature.verify(RSAMDSignature.java:89)
at weblogic.security.X509.verifySignature(X509.java:246)
at weblogic.security.X509.verify(X509.java:176)
at weblogic.security.SSL.SSLCertificate.verify(SSLCertificate.java:133)
at weblogic.security.SSL.SSLCertificate.input(SSLCertificate.java:116)
at weblogic.security.SSL.Handshake.input(Handshake.java:121)
at weblogic.security.SSL.SSLSocket.getHandshake(SSLSocket.java:1117)
at weblogic.security.SSL.SSLSocket.clientInit(SSLSocket.java:432)
at weblogic.security.SSL.SSLSocket.initialize(SSLSocket.java:276)
at weblogic.security.SSL.SSLSocket.<init>(SSLSocket.java:222)
at weblogic.security.SSL.SSLSocketFactory.createSocket(SSLSocketFactory.java:213)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:238)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:389)
at weblogic.net.http.HttpsClient.<init>(HttpsClient.java:209)
at weblogic.net.http.HttpClient.New(HttpClient.java:228)
at weblogic.net.http.HttpsURLConnection.getHttpClient(HttpsURLConnection.java:246)
at weblogic.net.http.HttpsURLConnection.connect(HttpsURLConnection.java:217)
at weblogic.net.http.HttpURLConnection.getInputStream(HttpURLConnection.java:319)
at HttpsConnect.main(HttpsConnect.java:13)
<Info> <SSL> <000000> <weblogic.security.AuthenticationException: Incorrect encrypted block possibly incorrect SSLServerCertificateChainFileName set for this server certificate>
java.io.IOException: weblogic.security.AuthenticationException: Incorrect encrypted block possibly incorrect SSLServerCertificateChainFileName set for this server certificate
at weblogic.security.SSL.SSLCertificate.verify(SSLCertificate.java:172)
at weblogic.security.SSL.SSLCertificate.input(SSLCertificate.java:116)
at weblogic.security.SSL.Handshake.input(Handshake.java:121)
at weblogic.security.SSL.SSLSocket.getHandshake(SSLSocket.java:1117)
at weblogic.security.SSL.SSLSocket.clientInit(SSLSocket.java:432)
at weblogic.security.SSL.SSLSocket.initialize(SSLSocket.java:276)
at weblogic.security.SSL.SSLSocket.<init>(SSLSocket.java:222)
at weblogic.security.SSL.SSLSocketFactory.createSocket(SSLSocketFactory.java:213)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:238)
at weblogic.net.http.HttpsClient.openServer(HttpsClient.java:389)
at weblogic.net.http.HttpsClient.<init>(HttpsClient.java:209)
at weblogic.net.http.HttpClient.New(HttpClient.java:228)
at weblogic.net.http.HttpsURLConnection.getHttpClient(HttpsURLConnection.java:246)
at weblogic.net.http.HttpURLConnection.getInputStream(HttpURLConnection.java:359)
at HttpsConnect.main(HttpsConnect.java:13)
I verified the certifiate chain by using the weblogic's ValidateCertChain utility, and the output seems to be confusing for the intermediate site and the entity site.
java utils.ValidateCertChain -pem inter.cerCert[0]: CN=VeriSign Class 3 International Server CA - G3,OU=Terms of use at https://www.verisign.com/r
pa (c)10,OU=VeriSign Trust Network,O=VeriSign\, Inc.,C=US
Certificate chain is incomplete, can't confirm the entire chain is valid
Certificate chain appears valid
Any pointers will be appreciated.This might be because Verisign has included anadditional intermediate certificate in its chain
You can find it here
https://knowledge.verisign.com/support/ssl-certificates-support/index?page=content&id=AR657&actp=search&viewlocale=en_US
Contact Verisign Support, u can chat with them even...
Let me know if you have any doubt.
Cheers!
Faisal
http://www.weblogic-wonders.com
Maybe you are looking for
-
Can I change the display name of a hyperlink in Powerview?
I have a power view report that has several very long hyperlinks in it, is it possible to display those links as something else in the report?
-
Der aufgerufene Media Encoder stürzt beim Video-Export aus flash immer ab. Weiß Jemand warum?
-
HR - XI - External System: one IDOC to multiple XML Files
Hi, I have a scenario where I need, out of one HRMD_A07 IDOC send multiple XML files: The IDOC and the XML files can the Master data for many employee (IDOC has max of 200 as of SAP, external system, max of 1000). The IDOC will be generated with chan
-
Problem deploying parts of CS4
I have some problems deploying parts of CS4 Design Std I ran setup --record=1 and built XML files for each Acrobat, Illustrator, InDesign and Photoshop and each time I deselected every component which could be deselected (like Acrobat.com, Air, Flash
-
Macbook pro early 2011 will not wake up from sleep mode
A couple of days ago, my battery died, and when I plugged in the power adapter, the light didn't come on at all to show it was charging. I tried again this morning, and it is charging just fine. I now have almost a full charge (according to the indic