Delay in AJP Connector jBoss/TomCat Solaris 10
I have:
- IIS 6, Windows 2003 Server on dual PIII with jk 1.2.15 installed and working
- Solaris 10 on Sun E420R with Quad Processors with jBoss / Tomcat version 4.0.3SP1
There is a significant delay in page loading that occurs randomly (every 10-20 clicks) which lasts for 10-18 or so seconds.
I've traced it to the read method in ChannelSocket.java. The delay always occurs while receive() is reading the header portion of the message. The length of the header that the read is trying to read is 4 bytes. The call to BufferedInputStream will block until it gets these 4 bytes of the header (10-18 seconds). I've modified the code and put a call in to available() before and after the read. The before returns 0 and the after returns 1138 or so.
I've tried every imaginable combination of configs on the IIS side to get around the problem ... and then some kernel TCP/IP configs on the Solaris side ... too many to list here.
The problem seems to be isolated to Solaris ... because Linux, XP, Windows 2003 server all work without this problem.
My question is this ... is there any thing that I can configure to have this read return faster? Changes to the Solaris kernel ... some config parameter ... ?? Anyone experience this before?
I'll gladly list the things I've tried to get some idea of how to solve this.
I think ultimately this is my problem: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4479751
Thanks in advance!
Hi
For Tomcat 3.x you need to use one of the following options:
(Note: this is with JBoss/Tomcat OR JBoss/Jetty)
Place you .war files in the following location:
C:\jboss-3.0.3\server\default\deploy and the app is automatically available.
If my app's name is DavidOnline.war, when deployed, I can access it at
http://localhost:8080/DavidOnline..
OR
Copy your entire development directory to the deploy direction above, RENAME your
directory from say C:\JspApps to C:\JspApps.war and you can work from that location and see your changes immeadiatly.
There is a file called jboss-service.xml that has some config options, also for the Tomcat bundle there is a file named tomcat-service.xml that has the standard server.xml section.. I suggest you check out the JBoss website, free docs and forums.. http://www.jboss.org.
Thanks, Hope this helps.
Similar Messages
-
New error with upgrade jboss/tomcat: "Connection handle has been closed and is unusable"
Hi,
This error suddenly appeared when we upgraded from jboss3/tomcat5.0 to jboss4.2/tomcat5.5.
here's the usecase:
1) User clicks on report link
2) Crystal reports web componnent displays screen to fill in report parameters.
3) user enters parameters and clicks submit
4) System throws Exception
The same reports worked fine with jboss 3.2.6/tomcat 5.0. We haven't touched anything in this realm.
Log Excerpt:
09:42:18,842 INFO [datasource] Openning rowset
09:42:18,904 ERROR [reportdefinition] com.crystaldecisions.reports.queryengine.driverImpl.m: JDBC Error: Connection handle has been closed and is unusable
09:42:18,905 ERROR [datasource] Failed to open rowset: the query failed to open rowset
com.crystaldecisions.reports.reportdefinition.datainterface.g: JDBC Error: Connection handle has been closed and is unusable
at com.crystaldecisions.reports.reportdefinition.datainterface.d.a(Unknown Source)
To try to narrow down the problem, I've updated the jdbc configuration to
<track-statements>true</track-statements>
here's a recap:
This Boolean element specifies whether to check for unclosed statements when a connection is returned to the pool. If it is true, a warning message is issued for each unclosed statement. If the log4j category org.jboss.resource.adapter.jdbc.WrappedConnection has trace level enabled, a stack trace of the connection close call is logged as well. This is a debug feature that can be turned off in production.
Interestingly enough, this error appears slightly upstream:
(CachedConnectionManager.java:526) - Closing a connection for you. Please close them yourself: org.jboss.resource.adapter.jdbc.WrappedConnection@c76003
java.lang.Throwable: STACKTRACE
at
org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
at com.crystaldecisions.reports.queryengine.driverImpl.k.a(Unknown Source)
at com.crystaldecisions.reports.queryengine.driverImpl.o.if(Unknown Source)
at com.crystaldecisions.reports.queryengine.av.new(Unknown Source)
at com.crystaldecisions.reports.queryengine.av.byte(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.b.a(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.b.a(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.b.a(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.j.a(Unknown Source)
at com.crystaldecisions.reports.dataengine.ba.try(Unknown Source)
at com.crystaldecisions.reports.common.av.a(Unknown Source)
at com.crystaldecisions.reports.common.ag.a(Unknown Source)
at com.businessobjects.reports.sdk.b.e.a(Unknown Source)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(Unknown
So the question arises:
1) Is the jboss datasource overly/aggressively closing result sets?
2) or is there a coding error in CRXIR2?
thanks,
bill
Full stack trace:
[2008-03-13 17:26:18,905] [INFO ] org.jboss.resource.connectionmanager.CachedConnectionManager (CachedConnectionManager.java:526) - Closing a connection for you. Please close them yourself: org.jboss.resource.adapter.jdbc.WrappedConnection@c76003
java.lang.Throwable: STACKTRACE
at org.jboss.resource.connectionmanager.CachedConnectionManager.registerConnection(CachedConnectionManager.java:290)
at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:417)
at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842)
at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
at com.crystaldecisions.reports.queryengine.driverImpl.k.a(Unknown Source)
at com.crystaldecisions.reports.queryengine.driverImpl.o.if(Unknown Source)
at com.crystaldecisions.reports.queryengine.av.new(Unknown Source)
at com.crystaldecisions.reports.queryengine.av.byte(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.b.a(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.b.a(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.b.a(Unknown Source)
at com.crystaldecisions.reports.reportdefinition.datainterface.j.a(Unknown Source)
at com.crystaldecisions.reports.dataengine.ba.try(Unknown Source)
at com.crystaldecisions.reports.common.av.a(Unknown Source)
at com.crystaldecisions.reports.common.ag.a(Unknown Source)
at com.businessobjects.reports.sdk.b.e.a(Unknown Source)
at com.businessobjects.reports.sdk.JRCCommunicationAdapter.request(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.y.a(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.r.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.cf.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.z.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ak.if(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.ad.int(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.bk.for(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.v.a(Unknown Source)
at com.crystaldecisions.proxy.remoteagent.v.if(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.DatabaseController.a(Unknown Source)
at com.crystaldecisions.sdk.occa.report.application.DatabaseController.setTableLocation(Unknown Source)
at com.crystaldecisions.reports.sdk.DatabaseController.setTableLocation(Unknown Source)
at org.apache.jsp.reports.processreport_jsp.switchTables(processreport_jsp.java:131)
at org.apache.jsp.reports.processreport_jsp.loadReport(processreport_jsp.java:68)
at org.apache.jsp.reports.processreport_jsp._jspService(processreport_jsp.java:227)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:387)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.participate.shared.pagecache.client.PageCacheFilter.doFilter(PageCacheFilter.java:760)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.participate.util.servlet.ExpiredPasswordFilter.doFilter(ExpiredPasswordFilter.java:92)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.participate.pe.channels.client.servlet.ChannelUrlFilter.processUrl(ChannelUrlFilter.java:168)
at com.participate.pe.channels.client.servlet.ChannelUrlFilter.doFilter(ChannelUrlFilter.java:100)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.participate.util.servlet.BlockIpAddressFilter.doFilter(BlockIpAddressFilter.java:224)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.outstart.multiapp.filters.KeepOtherSessionsAliveFilter.doFilter(KeepOtherSessionsAliveFilter.java:88)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at com.participate.util.servlet.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:151)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.web.tomcat.filters.ReplyHeaderFilter.doFilter(ReplyHeaderFilter.java:96)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:230)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
at org.jboss.web.tomcat.security.SecurityAssociationValve.invoke(SecurityAssociationValve.java:179)
at org.jboss.web.tomcat.security.JaccContextValve.invoke(JaccContextValve.java:84)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
at org.jboss.web.tomcat.service.jca.CachedConnectionValve.invoke(CachedConnectionValve.java:157)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:241)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:580)
at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
at java.lang.Thread.run(Thread.java:619)<p>
OK. I found the problem along with a workaround.
</p>
<p>
<strong>The problem:</strong>
</p>
<p>
a programming practice clashes with a new jboss 'safety check'.
</p>
<p>
<strong>Programming practice:</strong>
</p>
<p>
crystal reports gets a database connection in one jsp page, then tries to use it on another jsp/servlet
</p>
<p>
<strong>Jboss safety check:</strong>
Jboss/tomcat new comes configured out-of-the-box with a 'cached connection
manager', which
</p>
<p>
"Check[s] for unclosed connections and transaction terminated checks in servlets/jsps."
</p>
<p>
<strong> Summary</strong>
</p>
<p>
In short, if a servlet/jsp ends and it leaves a database connection open, Jboss will automatically close it.
</p>
<p>
</p>
<p>
<strong>Workaround:</strong><br />
Comment out two entries in these two files:
</p>
<p>
1) conf/jboss4/pe/deploy/jboss-web.deployer/server.xml
</p>
<p>
2) conf/jboss4/pe/deploy/jboss-web.deployer/META-INF/jboss-service.xml
</p>
<p>
The two entries:
</p>
<p>
</p>
<p>
1)
</p>
<p>
<Valve className="org.jboss.web.tomcat.service.jca.CachedConnectionValve"<br />
cachedConnectionManagerObjectName="jboss.jca:service=CachedConnectionManager"<br />
transactionManagerObjectName="jboss:service=TransactionManager" /><br />
</p>
<p>
2)
</p>
<p>
<depends>jboss.jca:service=CachedConnectionManager</depends><br />
</p>
<p>
</p>
<p>
<strong>Comments on the workaround</strong>
</p>
<p>
The 'cached connection manager' basically makes sure that the application cleans up after bad programmers. It seems most helpful in development, load testing, or trouble shooting.
</p>
<p>
In production, you can likely comment them out with minimal
impact on the application.
</p> -
Jboss/tomcat mapping configuration error
I can't even get the combination to serve a .jsp file or .html file. Regardless of the URL that I attempt, I only get a No Context configured to process this request error from tomcat and INFO [Engine] StandardHost[localhost]: MAPPING configuration error for request URI from JBoss. I've tried to access all of the various webapps under the catalina directory and can't get to any of them. I know that catalina is started because the log file shows
<Service name="JBoss-Tomcat">
<Engine name="MainEngine" defaultHost="localhost">
<Logger className="org.jboss.web.catalina.Log4jLogger" verbosityLevel="trace" category="org.jboss.web.localhost.Engine" />
<Host name="localhost">
<Valve className="org.apache.catalina.valves.AccessLogValve" prefix="localhost_access" suffix=".log" pattern="common" directory="../server/default/log" />
<DefaultContext cookies="true" crossContext="true" override="true" />
</Host>
</Engine>
<!-- A HTTP Connector on port 8080 -->
<Connector className="org.apache.catalina.connector.http.HttpConnector" port="8080" minProcessors="3" maxProcessors="10" enableLookups="true" acceptCount="10" debug="0" connectionTimeout="60000" />
</Service>
</Server> in jboss.web:service=EmbeddedCatalinaSX
2002-06-12 23:29:44,760 INFO [org.jboss.web.catalina.EmbeddedCatalinaServiceSX] Creating
2002-06-12 23:29:44,760 INFO [org.jboss.web.catalina.EmbeddedCatalinaServiceSX] Created
2002-06-12 23:29:44,760 DEBUG [org.jboss.deployment.MainDeployer] Done with create step of deploying tomcat4-service.xml
2002-06-12 23:29:44,760 DEBUG [org.jboss.deployment.MainDeployer] start step for deployment file:/D:/JBoss3.0/jboss-3.0.0_tomcat-4.0.3/server/default/deploy/tomcat4-service.xml
2002-06-12 23:29:44,760 DEBUG [org.jboss.deployment.SARDeployer] Deploying SAR, start step: url file:/D:/JBoss3.0/jboss-3.0.0_tomcat-4.0.3/server/default/deploy/tomcat4-service.xml
2002-06-12 23:29:44,760 INFO [org.jboss.web.catalina.EmbeddedCatalinaServiceSX] Starting
2002-06-12 23:29:44,760 INFO [org.jboss.deployment.MainDeployer] Adding deployer: org.jboss.web.catalina.EmbeddedCatalinaServiceSX@7dadcd
2002-06-12 23:29:44,760 DEBUG [org.jboss.web.catalina.EmbeddedCatalinaServiceSX] Setting catalina debug level to: 0
2002-06-12 23:29:44,760 DEBUG [org.jboss.web.catalina.EmbeddedCatalinaServiceSX] Setting catalina.home to: ../catalina
2002-06-12 23:29:44,760 DEBUG [org.jboss.web.catalina.EmbeddedCatalinaServiceSX] Setting catalina.base to: ../catalina
with no errors. I'm confused because I was able to consistently work with previous versions of JBoss with no problem. The configuration seems to have changed radically, is this some recent change that I just can't find a reference to? Thanks for any help.Hi
For Tomcat 3.x you need to use one of the following options:
(Note: this is with JBoss/Tomcat OR JBoss/Jetty)
Place you .war files in the following location:
C:\jboss-3.0.3\server\default\deploy and the app is automatically available.
If my app's name is DavidOnline.war, when deployed, I can access it at
http://localhost:8080/DavidOnline..
OR
Copy your entire development directory to the deploy direction above, RENAME your
directory from say C:\JspApps to C:\JspApps.war and you can work from that location and see your changes immeadiatly.
There is a file called jboss-service.xml that has some config options, also for the Tomcat bundle there is a file named tomcat-service.xml that has the standard server.xml section.. I suggest you check out the JBoss website, free docs and forums.. http://www.jboss.org.
Thanks, Hope this helps. -
Very strange index.jsp problem (Apache2 + Jboss/Tomcat)
I've been working on this for 6 hours until the current time of 4.30 am - any help is very much appreciated.
I (thought) I had successfully integrated Jboss/Tomcat with apache 2 using mod_jk 1.2.8 - and added an alias for jmx-console. But I just can't make index.jsp serve when loading the default directory. I also tried with a fairly straightforward jsp site I have 'ConnectSite' (just a conference name).
I have created deployment and alias called connect, results
http://localhost:8080/ConnectSite [success]
http://localhost/ConnectSite/index.jsp [success]
http://localhost/ConnectSite/ [fail] - Apache treats it like any other directory.
But what's really strange is if i take out mod_jk from apache and leave in DirectoryIndex index.jsp - then apache will serve the .jsp file unprocessed. All the static content is served by apache just fine.
I am baffled. Should I just try proxy for the moment.
Many Thanks,
-Mike D
Config files -
Apache section (Have of course added DirectoryIndex index.jsp)
LoadModule jk_module /usr/local/apache2/modules/mod_jk.so
<IfModule mod_jk.c>
JkWorkersFile /usr/local/apache2/workers.properties
JkLogFile /usr/local/apache2/logs/mod_jk.log
JkLogLevel error
JkOptions +ForwardDirectories
DirectoryIndex index.jsp
# JkAutoAlias /usr/java/jboss/server/default/deploy
# send all requests ending in .jsp to worker1
JkMount /*.jsp foo
# send all requests ending /servlet to worker1
JkMount /*/servlet/ foo
</IfModule>
(running apachectl configtest returns syntax OK)
workers.properties ...
# Tomcat and Java configuration
workers.tomcat_home=/usr/java/jboss/server/default/deploy/jbossweb-tomcat50.sar
workers.java_home=/usr/java/jdk
ps=/
worker.list=foo
# Definition for local worker using AJP 1.3
worker.foo.type=ajp13
worker.foo.host=localhost
worker.foo.port=8009
worker.foo.cachesize=20Workaround for anyone interested:
In apache conf:
use JkMount /ContextName/ to explicitly send each directory with index.jsp to Tomcat -
Hi,
I'd like to know if it's possible to deploy an application developed with ADF & UIX on a JBoss/Tomcat Server. And what happens with other AppServers? Are there any licensing issues?
Thanks. Miquel.Hi Miquel,
You should be able to deploy UIX/ADF to any application server that supports J2EE 1.3. Currently the only licensing that is required is a developer license, basically you buy JDeveloper licenses for your developers. No runtime charge at this point in time.
Please let me know if you run into any issues with regards to deployment.
- Jonas
JDev Team -
Hi,
I have a target system which is having SUN Solaris OS as the user repository.Does OIM has any connector for SUN Solaris?.Thanks in Advance.It depends on how the users are stored but if you're talking native Solaris user/group mgmt, try the SSH connector: http://download.oracle.com/docs/cd/E11223_01/doc.904/e10447/toc.htm
-
Jboss, Tomcat, Jbuilder
I am new to Servlets/JSP/EJB and I am trying learn them with using free stuff. Here is my questions. Please some answer these.
1. Do I need separate Web server to run Jboss/Tomcat. Even though Tomcat is web server many people says it is better have separate web server like IIS or Apache.
2. Do I need setup jsdk1.4.1_02 before I install Jboss+Tomcat?
3. Is anyone knows how to intergrate Jbuilder with Jboss and Tomcat?
Can someone direct me to right direction maybe a website that explaining these stuff.
APap3000,
1. Do I need separate Web server to run Jboss/Tomcat.You do not need a seperate web server to run Jboss/Tomcat. At home I use Jboss and Resin to play around. At work we have Jboss, Tomcat, and Apache. Apache does a better job at static content.
2. Do I need setup jsdk1.4.1_02 before I install
Jboss+Tomcat? Yes you need a JDK on the machine.
3. Is anyone knows how to intergrate Jbuilder with
Jboss and Tomcat?
Sorry I know nothing about Jbuilder. -
Jsp debugging under jboss/tomcat
empty
When you stop at a breakpoint you should be able the see the JSP page
with a marker pointing to the current JSP line. In your case that should
be maintenance/ad/adEdit.jsp
Can you debug the demo application from NitroX on your server?
What version (build number) of NitroX are you using?
M7 Support
[email protected] wrote:
I am using jboss 3.2.5 with embedded tomcat 5.0.26I am able to set up a web project, set a breakpoint on my jsp page, and
NitroX will stop at the breakpoint. However, it says it can't find the
source for my jsp page (i.e. "The source of the type
'org.apache.jsp.maintenance.ad.adEdit_jsp' could not be shown as the
type was not found.")
What do I need to do to get that to show up? Jboss/Tomcat makes a new
temp folder each time the project is deployed, do I have to change it
every time? I can't even get it to work by pointing the source folder
to that temp folder.
Thanks! -
Building the mod_jk between apche and jboss in solaris environment
hi there,
i have installed apache2 and running on one zone and jboss installed and running on another zone
now when i connecting of them using the tomcat connector by building the mod_jk i am getting the error where i have followed the procedure in the following link:
http://blogs.sun.com/shanti/entry/building_mod_jk
from the above link i have downloaded the source and set the path and then when i am running the file which i have saved then i am getting the below error:
./configure --with-apxs=/usr/local/apache2/bin/apxs
checking build system type... i386-pc-solaris2.10
checking host system type... i386-pc-solaris2.10
checking target system type... i386-pc-solaris2.10
checking for a BSD-compatible install... scripts/build/unix/install-sh -c
checking whether build environment is sane... yes
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking whether make sets $(MAKE)... yes
checking for test... /usr/bin/test
checking for rm... /usr/bin/rm
checking for grep... /usr/bin/grep
checking for echo... /usr/bin/echo
checking for sed... /usr/bin/sed
checking for cp... /usr/bin/cp
checking for mkdir... /usr/bin/mkdir
need to check for Perl first, apxs depends on it...
checking for perl... /usr/bin/perl
could not find /usr/local/apache2/bin/apxs
configure: error: You must specify a valid --with-apxs path
if any body has encountered such a problem please give me the reply
thank you for allhi o.bogosavljevic
yes i am using that package only
what might be the path of the aspx -
JBoss/Tomcat outOfMemoryError
Hey I am working on an existing servlet architecture that my company created, and I am running into a memory problem when I try to view certain servlet pages.
I am using JBoss-2.4.11 and Tomcat-4.0.6 (using catalina)for my test/debug environment with Win XP Pro as my OS (the actual production code is a server that runs on unix). Testing is just done on my work comp.
My problem occurs when I try to generate a report on a servlet page. If the result set of the query is too large (greater than 7000 rows approx) then I get an OOM Error.
I tried to to change JAVA_OPTS and CATALINA_OPTS to give the jvm more memory, but that hasn't worked. Below is what I set my JAVA_OPTS to:
set JAVA_OPTS=%JAVA_OPTS% -server -Xms256m -Xmx512m -XX:MaxPermSize=128M -XX:MaxPermSize=128M -XX:NewSize=512m -XX:MaxNewSize=512m -Xss512kThe OOM Error is this:
[ERROR,Engine] StandardWrapperValve[DeliveredLoadsReportCriteria]: Servlet.service() for servlet Del
iveredLoadsReportCriteria threw exception
javax.servlet.ServletException: Servlet execution threw an exception
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.j
ava:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:243)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:190)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.CertificatesValve.invoke(CertificatesValve.java:246)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2347)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:170)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:468)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:564)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline.invokeNext(StandardPipeline.java:566)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:472)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:943)
at org.apache.catalina.connector.http.HttpProcessor.process(HttpProcessor.java:1027)
at org.apache.catalina.connector.http.HttpProcessor.run(HttpProcessor.java:1125)
at java.lang.Thread.run(Unknown Source)
[ERROR,Engine] ----- Root Cause -----
java.lang.OutOfMemoryErrorIt seems that no matter what I set my JAVA_OPTS to I still get an OOM Error. Do I have to do something special because I am running it on WIN XP? Also when I CRTL-C jboss I get this error message.
[INFO,Engine] StandardWrapper[/RI:DeliveredLoadsReport]: Waiting for 1 instance(s) to be deallocatedThe run_with_catalina.bat came with the version of
jboss that I downloaded. run_with_catalina.bat calls
the run.bat with the parameter catalina. JAVA_OPTS
never gets overwritten in the run.bat file. In
run.bat this is what is used to start up the JVM:
java %JAXP% -classpath "%JBOSS_CLASSPATH%"
org.jboss.Main %1 %2 %3 %4 %5 %6 %7 %8 %9Now I am not sure whether I have to explicitly pass
JAVA_OPTS to the java command or if the JAVA_OPTS
environment variable is automatically used. I am
going to do some tinkering on the run.bat file, and
see if I can get this problem solved. Any help with
my problem would be appreciated.Now you're getting somewhere. You can see that it only uses JAXP and JBOSS_CLASSPATH environment variables. You can also look thru that file and see what JAXP is set to. If it doesn't depend on JAVA_OPTS, and you've already shown me what JBOSS_CLASSPATH looks like - it doesn't - then it isn't used. It is true that org.jboss.Main (or dependent) class could look for a JAVA_OPTS environment variable and use it, but it wouldn't give more memory to the java process - by that time java has already started.
How about doing this right before that line is executed (as a temporary debugging step):
echo %JAXP%
echo %JBOSS_CLASSPATH%
Then you can see what actual arguments are being passed to the java process. -
Your opinion - graphical configuration consoles for JBoss & Tomcat
Hexamind Companion for JBoss and Hexamind Companion for Apache Tomcat are tools for developers and system administrators who manage the configuration of J2EE servers. We are nearing the final stages of development, and would like to hear your opinion about these tools.
Please follow the links below to learn more and participate in our online surveys.
If you are familiar with Apache Tomcat:
http://www.hexamind.com/website/surveys/tomcat?orig=e1
If you are familiar with JBoss Application Server:
http://www.hexamind.com/website/surveys/jboss?orig=e1
We thank you for your help,
Itai Shirav
Hexamind Ltd.
http://www.hexamind.comHmm Marketing
-
JBoss & Tomcat: Which one?
Hi,
I'd like to hear from you guys about what I am thinking. I have JBoss AS do I need to install Tomcat? Or it is bundled already? Because I don't have any idea where I will put my development files / programs in JBoss. And also can someone helped me where to start? A good tutorial link in J2EE / JBoss configuration.
Thanks a lot! Hope to hear from you guys!Hi guys,
Btw, I tried using it now (Netbeans 5.5 and JBoss 4) but when I compiled it. I ran into some problems. Here is the complete compiling info of my project.
pre-init:
init-private:
init-userdir:
init-user:
init-project:
do-init:
post-init:
init-check:
init:
deps-jar:
deps-j2ee-archive:
init:
deps-jar:
Created dir: C:\Applications\TBK-EA\TBK-EA-ejb\build\jar
Created dir: C:\Applications\TBK-EA\TBK-EA-ejb\build\ear-module
Copying 3 files to C:\Applications\TBK-EA\TBK-EA-ejb\build\ear-module\META-INF
compile:
library-inclusion-in-manifest:
Created dir: C:\Applications\TBK-EA\TBK-EA-ejb\dist
Building jar: C:\Applications\TBK-EA\TBK-EA-ejb\dist\TBK-EA-ejb.jar
dist-ear:
init:
deps-module-jar:
deps-ear-jar:
init:
deps-jar:
compile:
library-inclusion-in-manifest:
dist-ear:
deps-jar:
Created dir: C:\Applications\TBK-EA\TBK-EA-war\build\ear-module\WEB-INF\classes
Created dir: C:\Applications\TBK-EA\TBK-EA-war\build\ear-module\META-INF
Copying 1 file to C:\Applications\TBK-EA\TBK-EA-war\build\ear-module\META-INF
Copying 3 files to C:\Applications\TBK-EA\TBK-EA-war\build\ear-module
library-inclusion-in-archive:
library-inclusion-in-manifest:
Copying 1 file to C:\Applications\TBK-EA\build
compile:
compile-jsps:
do-ear-dist:
Created dir: C:\Applications\TBK-EA\TBK-EA-war\dist
Building jar: C:\Applications\TBK-EA\TBK-EA-war\dist\TBK-EA-war.war
dist-ear:
pre-pre-compile:
Created dir: C:\Applications\TBK-EA\build\jar
pre-compile:
do-compile:
Copying 3 files to C:\Applications\TBK-EA\build\META-INF
Copying 1 file to C:\Applications\TBK-EA\build
post-compile:
compile:
pre-dist:
do-dist-without-manifest:
do-dist-with-manifest:
Created dir: C:\Applications\TBK-EA\dist
Building jar: C:\Applications\TBK-EA\dist\TBK-EA.ear
post-dist:
dist:
pre-run-deploy:
Starting server JBoss Application Server 4
Starting JBoss Application Server 4
Starting JBoss Application Server 4
JBoss Application Server 4 Started
Distributing C:\Applications\TBK-EA\dist\TBK-EA.ear to [org.jboss.deployment.spi.LocalhostTarget@6f54e]
Deploying C:\Applications\TBK-EA\dist\TBK-EA.ear
Deploying C:\Applications\TBK-EA\dist\TBK-EA.ear
Waiting for server to start the module http://localhost:7000/TBK-EA-war
Applicaton Deployed
Operation start started
Operation start completed
post-run-deploy:
run-deploy:
Browsing: http://localhost:7000/TBK-EA-war/
run-display-browser:
run-ac:
run:
BUILD SUCCESSFUL (total time: 5 minutes 26 seconds)
Not after that my browser opened and I got:
HTTP Status 404 - /TBK-EA-war/
type Status report
message /TBK-EA-war/
description The requested resource (/TBK-EA-war/) is not available.
Apache Tomcat/5.5.20
What's the problem here? Pls. help me. Thanks! -
Tomcat Solaris 9 distribution will not start
I downloaded SOLARIS 9 and installed it on my SUN BLADE 100. I looked for and found TOMCAT, a version came with the SOLARIS 9 operating environment. I tried to start TOMCAT, startup.sh, I could not get TOMCAT to start. Here is the output from catalina.out.
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/catalina/startup/Bootstrap
Any help is certainly appreciated.
Michael
[email protected]You have to add the tomcat/lib/Bootstrap.jar to your classpath.
-
Truncated class names on Tomcat, Solaris 10
Guys, I installed tomcat 5.0.28 and 5.5.20 on Solaris 10. They start with no problem, but when trying to execute the examples, I get a 404 error. It{s because the deployed classes names are truncated:
on /var/tomcat/webapps/jsp-examples/WEB-INF/classes/org/apache/jsp/jsp2/el, the content is:
[code]
basic_002darithmeti
basic_002dcompariso
functions_jsp.class
implicit_002dobject
It's happening in both versions. ANY HINT/CLUE/HELP?
Thanks,
VladimirIt won't work if the deployed Class Names don't match exactly with the Class Names that are in the files.
Your only solution would be to either shorten the class names in both the file name and the name of the class inside the file, or
keep the file names in their full form as they were originally. -
In the system I'll implement, RFC for enquiries & Idoc for reporting will both be applied accordingly. The system contains a simple java web-app as the front-end deployed on 3rd party J2EE web App server (eg: Tomcat/JBoss) that will connect to SAP-XI then to client's SAP system.
I've been studying on RFC, Idoc & some XI-related overviews lately. I come to realize that what being suggested is deploying java app on SAP J2EE Engine. Since we will be using Tomcat/Apache AS, the mentioned architecture cannot be applied.
So, I hope you can give me a lead on re-designing the whole architecture if required.
1) May I know the suggested system hardware setup for this design? Does J2EE web server & SAP XI reside on the same machine or advisably to be separated?
2) I shifted this post from SAP-XI forum prior to forummer's suggestion. I will develop this system in Eclipse environment as I know SAP provides certain plugins for the integration. May I know what plugins are required?
Note: Now, I still find it hard to compose the whole big picture. My background is fresh Java Programmer with no experience in SAP.Nothing should prevent you connecting your web app on tomcat to XI , whatever the direction of message flow be i.e. outbound / inbound.
XI has a combination of Java stack as well as ABAP stack as its base. The java stack essentially being the J2EE engine. It resides on the same host as that of XI, at least almost all the XI installations I've seen
Assume that your Web app wants to send as well as recieve data from XI, let us consider case by case :
1. Send data to XI : You need to make your application do a HTTP post into XI pipeline, you do not need any XI adapter to be configured as SENDER XI HTTP adapter is not required.
2. Recieve data from XI : Prerequisite being your web app works on HTTP post , you can configure a reciever HTTP adapter on XI which will send data to your webapp and might / might not recivee response.
For all this development you can use NetWeaver developer studio.
Maybe you are looking for
-
10.6.2 and after effects
ok...please don't yell at me if this has been discussed, i am just looking for a solution as I have not had any issues, til now, with after effects on a 10.6 mac. I just installed production premium on a macbook pro running 10.6.2 and after effects j
-
Hi. I'm creating a project that uses the MVC design pattern, and being eager to make sure I follow the best practices I have a couple of questions. When notifying a 'View' of changes to the 'Model' is it preferable to effect this notfication using th
-
Setting foreground font color on a JSpinner
I'm trying to edit the foreground font color on a JSpinner component. spinner.setForeground(Color color) or spinner.getEditor().setForeground(Color color) doesn't work What does? Best regards, Helge Fredriksen
-
IPhone 5 WIDESPREAD LTE problem. READ.
There is a widespread bug in the way iPhone 5 connects to LTE networks. If you are in a major city or if you commute on the subway in NO SERVICE areas, when the phone comes out of no service it will NOT connect to LTE automatically. Only a LTE toggle
-
[FATAL] [INS-30508] Invalid ASM disks.
Dear Gurus please help for troubleshoot the Invalid asm disk error on solaris Oracle Grid 11.2.0.3.0 Solaris10 with EMC Powerpath Partition -bash-3.2$ ./runInstaller -silent -responseFile /aaa/Oracle11g_SunSPARC_64bit/grid/response/grid_install.rsp S