*This message was transferred with a trial version of CommuniGate(tm) Pro*
Hi folks,

Okay, I'm kind of new to this java stuff, so please bear with me. I think I have it 
almost done but have reached a stumbling block which I cannot resolve by searching 
through the archives.  I'm sure its a simple one, but It's got me stumped.

FOR---
Solaris 2.6
Apache 1.3.12
Tomcat 3.2
mod_jk
JDK 1.3

I have my apache set up to use virtual hosts.
I have the tomcat set up pretty much stock, with the exception that I added ajp13(i'm 
not using it in my apache configuration though) and I commented out the /examples, 
/admin, etc. now all i have in my server.xml file for context is

        <Context path="/java"
                 docBase ="/export/home/cci/public_html/java"
                 croseContext="true"
                 debug="0"
                 reloadable="true">
        </Context>

then in my httpd.conf file i have
<VirtualHost 111.111.111.111>
        ServerAdmin [EMAIL PROTECTED]
        DocumentRoot /export/home/cci/public_html
        ServerName my.domain.com
        DirectoryIndex index.cgi index.pl index.html index.shtml
        <Directory /export/home/cci/public_html>
          Options All
        </Directory>

        <Directory /export/home/cci/public_html/cgi-bin>
          Options All
        </Directory>
    AddHandler cgi-script .cgi
    AddHandler cgi-script .pl
        ErrorLog /export/home/cci/public_html/logs/error_log
        TransferLog /export/home/cci/public_html/logs/access_log
 
   <Directory "/export/home/cci/public_html/java">
     Options Indexes FollowSymLinks
   </Directory>
 
  #
  # The following line mounts all JSP files and the /servlet/ uri to tomcat
  #
  JkMount /java/servlet/* ajp12
  JkMount /java/*.jsp ajp12
  #
  # The following line prohibits users from directly accessing WEB-INF
  #
  <Location "/java/WEB-INF/">
      AllowOverride None
      deny from all
  </Location>
        
  #
  # The following line prohibits users from directly accessing META-INF
  #
  <Location "/java/META-INF/">
      AllowOverride None
      deny from all
  </Location>
        
</VirtualHost>


If I http to my virtualhost:8080 the stock tomcat screen comes up.
If I http to my virtualhost:8080/java then I get the directory index of the 
/export/home/cci/public_html/java(as I would expect).

I have created a quick jsp to test my setup which just does the basic html tags and 
then does a
<% out.println("test") %>

if I go to http://my.domain.com/java i get the same directory listing as I would 
expect. 

the problem is that when i click on test.jsp, i get the following output.(for either 
the servername:8080/java or the virtual host).

Error: 500

Location: /java/test.jsp

Internal Servlet Error:

javax.servlet.ServletException: sun/tools/javac/Main
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:399)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
        at org.apache.tomcat.core.Handler.service(Handler.java:286)
        at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
        at 
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
        at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
        at 
org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnection(Ajp12ConnectionHandler.java:166)
        at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
        at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
        at java.lang.Thread.run(Thread.java:484)

Root cause: 

java.lang.NoClassDefFoundError: sun/tools/javac/Main
        at org.apache.jasper.compiler.SunJavaCompiler.compile(SunJavaCompiler.java:128)
        at org.apache.jasper.compiler.Compiler.compile(Compiler.java:245)
        at org.apache.jasper.servlet.JspServlet.doLoadJSP(JspServlet.java:462)
        at org.apache.jasper.servlet.JasperLoader12.loadJSP(JasperLoader12.java:146)
        at org.apache.jasper.servlet.JspServlet.loadJSP(JspServlet.java:433)
        at 
org.apache.jasper.servlet.JspServlet$JspServletWrapper.loadIfNecessary(JspServlet.java:152)
        at 
org.apache.jasper.servlet.JspServlet$JspServletWrapper.service(JspServlet.java:164)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:318)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:391)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
        at org.apache.tomcat.core.ServletWrapper.doService(ServletWrapper.java:404)
        at org.apache.tomcat.core.Handler.service(Handler.java:286)
        at org.apache.tomcat.core.ServletWrapper.service(ServletWrapper.java:372)
        at 
org.apache.tomcat.core.ContextManager.internalService(ContextManager.java:797)
        at org.apache.tomcat.core.ContextManager.service(ContextManager.java:743)
        at 
org.apache.tomcat.service.connector.Ajp12ConnectionHandler.processConnection(Ajp12ConnectionHandler.java:166)
        at org.apache.tomcat.service.TcpWorkerThread.runIt(PoolTcpEndpoint.java:416)
        at org.apache.tomcat.util.ThreadPool$ControlRunnable.run(ThreadPool.java:498)
        at java.lang.Thread.run(Thread.java:484)

I checked my workers.properties and it appears to be all okay.  the tomcat_home and 
java_home are set correct.  I can run other java applications okay.

can anybody help me with this? I'm totally stumped and don't know where to look. I 
can't find that much documentation on setting up mod_jk with virtual hosts. I checked 
out the tomcat_apache howto and the minimalistic approact to setting up tomcat and all
the other docs that come with it.  I'm sure its just something simple i have missed 
somewhere.

any help would be most appreciated.

bill

Reply via email to