问一个问题:在tomcat 下 如何运行 jsp

xstarfox 2003-10-17 11:23:08
rt
...全文
343 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
ulcer 2003-10-19
  • 打赏
  • 举报
回复
这样设置 不但普通的jsp也不能通过
http://localhost/test/*.jsp来访问
而且连tomcat的默认主页也进不去了,请高手指点
下面是tomcat出错的信息
org.apache.jasper.JasperException: Unable to compile class for JSP

No Java compiler was found to compile the generated source for the JSP.
This can usually be solved by copying manually $JAVA_HOME/lib/tools.jar from the JDK
to the common/lib directory of the Tomcat server, followed by a Tomcat restart.
If using an alternate Java compiler, please check its installation and access path.

org.apache.jasper.compiler.DefaultErrorHandler.javacError(DefaultErrorHandler.java:128)
org.apache.jasper.compiler.ErrorDispatcher.javacError(ErrorDispatcher.java:348)
org.apache.jasper.compiler.Compiler.generateClass(Compiler.java:415)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:455)
org.apache.jasper.compiler.Compiler.compile(Compiler.java:439)
org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:555)
org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:300)
org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:293)
org.apache.jasper.servlet.JspServlet.service(JspServlet.java:240)
javax.servlet.http.HttpServlet.service(HttpServlet.java:856)

xg222cn 2003-10-18
  • 打赏
  • 举报
回复
这是98下的tomcat和jdk的配置方法。
msconfig.sys中加入以下行:

shell=c:\command.com /e:1024 /p

autoexec.bat中加入以下行:
SET PATH=%PATH%;C:\KAV2003;e:\jsdk1.4;e:\jsdk1.4\bin
set CLASSPATH=.;e:\jsdk1.4lib\Tools.jar;e:\jsdk1.4lib\dt.jar;e:\tomcat\common\lib\servlet.jar;
set JAVA_HOME=e:\jsdk1.4
set TOMCAT_HOME=e:\tomcat
2000下更简单。
你做好jsp程序后把他放在e:\tomcat\webapps\jsp-examples下。
启动tomcat,用浏览器看:http://localhost:8080/jsp-examples/文件名.jsp
jsp-examples这个文件夹有的版本叫examples,自已进去看看
seamg 2003-10-18
  • 打赏
  • 举报
回复


<welcome-file-list>
<welcome-file>input.jsp</welcome-file> //这里设置默认初始页面的jsp
</welcome-file-list>
gzqjava 2003-10-18
  • 打赏
  • 举报
回复
jsp放置的文件夹里的web.xml不用设置,系统默认的。
Jspwu 2003-10-18
  • 打赏
  • 举报
回复
这个问题,是jsp的书上都有!
xstarfox 2003-10-18
  • 打赏
  • 举报
回复
那jsp放置的文件夹里的web.xml怎么设置?
yaray 2003-10-18
  • 打赏
  • 举报
回复
reload属性为true时,Tomcat能自动侦测JSP文件改变.如改变,则自动编译
yaray 2003-10-18
  • 打赏
  • 举报
回复
D:\test运行jsp
---------------
目录结构:
D:\test
|
+--index.jsp <== 首页
|
+--WEB-INF\
| |
| +--web.xml <== 一定要有此文件存在
| |
| +--classes\ <== 放置所有class文件
| | |
| | +--[包名\]*.class
| |
| +--src\ <== 放置所有java源文件(仅建议)
| | |
| | +--[包名\]*.java
| |
| +--lib\ <==放置所有仅用于此应用的jar文件(如数据库驱动jar文件)
| |
| +--*.jar
|
+--jsp\ <==放置所有JSP文件(仅建议)
|
+-- *.jsp


设置%Tomcat%\conf\server.xml文件:
添加:
<Context path="TEST" docBase="D:\test" reload="true" debug="0">
path: URL访问路径
docBase:实际文件的目录路径(首页所在目录)
reload: 属性名字记不清楚了,自己查吧,
访问:
http://localhost:8080/TEST


onizuka5211 2003-10-18
  • 打赏
  • 举报
回复
预编译过程产生的class文件将存放在
\Tomcat\work\Standalone\localhost\
下的你的文件夹内

Tomcat\conf\server.xml中
<Host name="localhost" debug="0" appBase="D:\test"
unpackWARs="true" autoDeploy="true">
就可以在D:\test下运行jsp.

看来你需要好好学习呀
ulcer 2003-10-18
  • 打赏
  • 举报
回复
以上各位,这个问题是我托同学帮我问的。
实际情况是:
tomcat5 + xp 默认端口已改为80 并自设目录D:/gotest
访问路径是:http://localhost/test/
gotest下有index.html和 web-inf文件夹

web-inf里有classes和lib文件夹,当然还有web.xml(内容如下)
<?xml version="1.0" encoding="ISO-8859-1"?>

<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">

<web-app>
<display-name>Welcome to Tomcat</display-name>
<description>
Welcome to Tomcat
</description>
<servlet>
<servlet-name>jsp</servlet-name>
<servlet-class>org.apache.jasper.servlet.JspServlet</servlet-class>
<init-param>
<param-name>fork</param-name>
<param-value>false</param-value>
</init-param>
<init-param>
<param-name>xpoweredBy</param-name>
<param-value>false</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>

-->

<!-- JSPC servlet mappings start -->

<servlet>
<servlet-name>org.apache.jsp.jsp2.el.functions_jsp</servlet-name>
<servlet-class>org.apache.jsp.jsp2.el.functions_jsp</servlet-class>
</servlet>



<servlet>
<servlet-name>gogogo</servlet-name>
<servlet-class>gogogo</servlet-class>
</servlet>
<servlet>
<servlet-name>RequestDisplay</servlet-name>
<servlet-class>RequestDisplay</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>org.apache.jsp.jsp2.el.functions_jsp</servlet-name>
<url-pattern>/jsp2/el/functions.jsp</url-pattern>
</servlet-mapping>

<servlet-mapping>
<servlet-name>gogogo</servlet-name>
<url-pattern>/servlet/gogogo</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>RequestDisplay</servlet-name>
<url-pattern>/servlet/RequestDisplay</url-pattern>
</servlet-mapping>

<!-- JSPC servlet mappings end -->

</web-app>

至此能实现 http://localhost/test/下任意servlet的运行
小弟不明白的地方是 jsp页最终会转换成servlet来运行,预编译过程产生的class文件将存放在何处,可以自定么?具体如何设置?以及如何在D:\test下运行jsp.
望高手解惑。不胜感激。


hecaba 2003-10-17
  • 打赏
  • 举报
回复
你这个问题太大了,别人怎样答?说起来很长的简单的说,就是把你的jsp文件放在tomcat中的webapps下面
pconline 2003-10-17
  • 打赏
  • 举报
回复
安装TOMCAT之前要先安装JSP解释程序JDK.然后把环境变量设置好后,安装TOMCAT...

TOMCAT安装后默认的路径是:http://localhost:8080 这时IE打开一个带着小猫的面页.(好象是小狐狸).说明一切安装正常..
TOMCAT的默认WEB目录是你安装的TOMCAT下的WEBAPPS下的examples目录下.把你的JSP文件放在这个目录下面然后在IE中输入.http://localhost:8080/你的JSP文件名.jsp
这样你写的JSP文件就可以执行了

81,090

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧