to :amortal
如你所说,我在webapps 下建一servlets目录,然后把HelloWorld.class文件拷贝到该目录
通过下面url:http://zlp:8080/examples/HelloWorld 访问时,还是不行
(jsp程序运行正常)
如你所说,我在webapps 下建一servlets目录,然后把HelloWorld.class文件拷贝到该目录
通过下面url:http://zlp:8080/examples/HelloWorld 访问时,还是不行
(jsp程序运行正常)
如上所说组成Web应用程序的Servlet,还包含初始化参数。在Tomcat中,也可以将放在Web-INF/classes中的Servlet直接以servlet/Servlet名访问,但是一般来说,不推荐这样使用。而且这样的使用方法还会导致Servlet的相关资源组织的复杂性。所以一般来说推荐将所有的Servlet在这里定义出来。在tomcat中定义Servlet的方法与JBuidler中稍有不同,以我们的报表应用程序为例,配置如下:
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>logVerbosityLevel</param-name>
<param-value>WARNING</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet>
<servlet-name>pubparam</servlet-name>
<servlet-class>servlet.pubparam</servlet-class>
</servlet>
<servlet>
<servlet-name>DoTask</servlet-name>
<servlet-class>servlet.DoTask</servlet-class>
</servlet>
<servlet>
<servlet-name>Actpubparam</servlet-name>
<servlet-class>servlet.Actpubparam</servlet-class>
</servlet>
<servlet>
<servlet-name>RptSave</servlet-name>
<servlet-class>servlet.RptSave</servlet-class>
</servlet>
<servlet>
<servlet-name>historyDel</servlet-name>
<servlet-class>servlet.historyRpt</servlet-class>
</servlet>
<servlet>
<servlet-name>ReportViewControl</servlet-name>
<servlet-class>servlet.ReportViewControl</servlet-class>
</servlet>
<servlet>
<servlet-name>ReportTemplateControl</servlet-name>
<servlet-class>servlet.ReportTemplateControl</servlet-class>
</servlet>
<servlet>
<servlet-name>DoShare</servlet-name>
<servlet-class>servlet.DoShare</servlet-class>
</servlet>
<servlet>
<servlet-name>DoTmp</servlet-name>
<servlet-class>servlet.DoTmp</servlet-class>
</servlet>
<servlet>
<servlet-name>TmpUpLoad</servlet-name>
<servlet-class>servlet.TmpUpLoad</servlet-class>
</servlet>
<servlet>
<servlet-name>Authority</servlet-name>
<servlet-class>servlet.Authority</servlet-class>
</servlet>
<servlet>
<servlet-name>calendar</servlet-name>
<servlet-class>servlet.calendar</servlet-class>
</servlet>
<servlet>
<servlet-name>svt_DownloadToExcel</servlet-name>
<servlet-class>servlet.svt_DownloadToExcel</servlet-class>
</servlet>
<!-- ================ Built In Servlet Mappings ========================= -->
<!-- The servlet mappings for the built in servlets defined above. Note -->
<!-- that, by default, the CGI and SSI servlets are *not* mapped. You -->
<!-- must uncomment these mappings (or add them to your application's own -->
<!-- web.xml deployment descriptor) to enable these services -->
<!-- The mapping for the default servlet -->
<servlet-mapping>
<servlet-name>pubparam</servlet-name>
<url-pattern>/pubparam</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DoTask</servlet-name>
<url-pattern>/DoTask</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Actpubparam</servlet-name>
<url-pattern>/Actpubparam</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>RptSave</servlet-name>
<url-pattern>/RptSave</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>historyDel</servlet-name>
<url-pattern>/historyDel</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ReportViewControl</servlet-name>
<url-pattern>/ReportViewControl</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>ReportTemplateControl</servlet-name>
<url-pattern>/ReportTemplateControl</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DoShare</servlet-name>
<url-pattern>/DoShare</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>DoTmp</servlet-name>
<url-pattern>/DoTmp</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>TmpUpLoad</servlet-name>
<url-pattern>/TmpUpLoad</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Authority</servlet-name>
<url-pattern>/Authority</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>calendar</servlet-name>
<url-pattern>/Calendar</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>svt_DownloadToExcel</servlet-name>
<url-pattern>/DownloadToExcel</url-pattern>
</servlet-mapping>
注意上面的代码中蓝色部分的为报表程序所需要的servlet的配置信息。其中<servlet>部分描述的是servlet的名称和对应的包名。<servlet-mapping>部分描述的是servlet的名称和对应的物理目录名。在tomcat中这两部分不能写在一起,必须所有的servlet元素写在一起,所有的Servlet-mapping写在一起。这一点非常重要。
<servlet>
<servlet-name>helloworld</servlet-name>
<servlet-class>helloworld</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>helloworld</servlet-name>
<url-pattern>/helloworld</url-pattern>
</servlet-mapping> 另外,你要确保你的TOMTAT_HOME\conf\server.xml配置正确。
那就一定没问题。