请教:在tomcat下运行成功的JSP到Resin下是不是会出问题啊? 
我在自己机器上TOMCATA环境下运行好的程序发布到空间(resin)下结果有如下错误
500 Servlet Exception
java.lang.NullPointerException
at java.lang.String.<init>(String.java:141)
at _jspgbook._index__jsp._jspService(/home/lotusonme/jspgbook/index.jsp:92)
/////////////(/home/lotusonme/jspgbook/index.jsp:92是String msg = new String( redhat.fileRead() );前面使用了<jsp:useBean id="redhat" class="com.my.www.redhat.myfile" scope="request" />  ////////////////////////////
at com.caucho.jsp.JavaPage.service(JavaPage.java:75)
at com.caucho.jsp.Page.subservice(Page.java:506)
at com.caucho.server.http.FilterChainPage.doFilter(FilterChainPage.java:182)
at com.caucho.server.http.Invocation.service(Invocation.java:315)
at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
at com.caucho.server.http.RunnerRequest.handleRequest(RunnerRequest.java:346)
at com.caucho.server.http.RunnerRequest.handleConnection(RunnerRequest.java:274)
at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
at java.lang.Thread.run(Thread.java:534)
--------------------------------------------------------------------------------
Resin 2.1.14 (built Thu Jul 1 18:39:55 PDT 2004)

解决方案 »

  1.   

    resin虚拟上当设置不正确<host id='localhost'>     
          <document-directory>D:\Tomcat 5.0\webapps\ROOT</document-directory>   
          <!-- configures the root web-app -->
          <web-app id='lyb/'>     
           <!--  adds xsl to the search path -->
            <class-loader>
              <simple-loader path="$host-root/xsl"/>
            </class-loader>
            <servlet-mapping url-pattern="/servlet/*" servlet-name="invoker"/>

    <servlet-mapping url-pattern='*.jsp' servlet-name='jsp'/>
    <servlet-mapping url-pattern='*.htm' servlet-name='jsp'/>
    <servlet-mapping url-pattern='*.html' servlet-name='jsp'/>
    <session-config>
           <session-max>4096</session-max>
           <session-timeout>30</session-timeout>
           <enable-cookies>true</enable-cookies>
           <enable-url-rewriting>true</enable-url-rewriting>
        </session-config>

          </web-app>
      
         <web-app id='ch1/'>     
            <!-- adds xsl to the search path -->
            <class-loader>
              <simple-loader path="$host-root/xsl"/>
            </class-loader>
            <servlet-mapping url-pattern="/servlet/*" servlet-name="invoker"/>
          </web-app>
        </host>说明:上面的lyb和ch1是两个不同的虚拟目录,都是放在D:\Tomcat 5.0\webapps\ROOT下的,这个路径你也可以改的,例如改为D:\jsp_web 那么lyb和ch1就要放在这个目录下如果你此时要新建一个虚似目录mysite 那么你只需要复制
    <web-app id='ch1/'>     
            <!-- adds xsl to the search path -->
            <class-loader>
              <simple-loader path="$host-root/xsl"/>
            </class-loader>
            <servlet-mapping url-pattern="/servlet/*" servlet-name="invoker"/>
          </web-app>
    放到</host>的上面,把这里面ch1改为mysite,然后在D:\jsp_web下新建一个mysite文件夹,这时你的这个虚拟目录就建好了,再把你的应用程序放到这个文件夹下就行了,防问路径为:http://localhost:8080/mysite
    注意,你的该站点的WEB-INF文件夹也要放在D:\jsp_web\mysite下,而不是D:\jsp_web下。
      

  2.   

    以上设置是在:D:\resin\conf\resin.conf中,D:\resin是我机子上的resin安装目录