sun 提供的 jswdk 的 FAQ 的翻译文档

joards 2002-05-22 05:59:35
JavaServer Pages (tm) Web Development Kit [faq]

这一份文档列出了一些经常被提及的有关 JavaServer(TM) Web Development Kit (JSWDK). 的问题。独立的文档可以在 java.sun.com 的 component technologies (Servlets and JSP)上找到。

1。使用 JSWDK 需要设置的环境变量
你需要设置一个有效的关于 JDK 的 CLASSPATH 变量。(对于 Unix, JDK 1.1.x or 1.2. For Windows, JDK 1.2 )
如果你使用的是 JDK 1.2 , 你依然需要按照如下的建议中的一条去操作。

· 在 JAVA_HOME 变量中设置 JDK 的路径
· 在 CLASS_PATH 变量中设置 tools.jar 的路径

其它必需的 .classes 和 .jar 文件在 JSWDK 的 startserver 命令的运行脚本或者批处理文件中设置。

2。运行 JSPs 和 Servlets 需要的 .classes 文件在哪里?
这些文件在如下位置:
· webserver.jar   --  Servlet 编译器的 .class 文件
· lib/jspengine.jar  --  JSP 编译器的 .class 文件
· lib/servlet.jar  --  Servlet 的公共 APIs 文件
· lib/xml.jar  --  xml 文件的解析 .class 文件

3。我可以使用其他的 webservers 来整合这些 .class 吗?
JSP 的编译器实际只使用了 Java Servlet 2.1 API 的公共部分。理论上,它可以在其他支持 Servlet 2.1 API 的 Servlet 编译器上运行。但是 SUN 公司没有在除了 JSWDK 以外的 Servlet 编译器上作过测试。

4。 我应该把我的 JSP 文件 和 JAVABEAN 文件放在什么地方?
如果你只是尝试的运行JSP 而不是建立一个独立的 WEB 应用程序。你可以使用缺省的 “EXAMPLE” 的程序。如果你是建立一个新的 WEB 应用程序,请参考 FAQ 中有关设置新的 WEB 应用程序的问题的解答。

使用缺省的“EXAMPLE” 的程序:
<1> 把所有的JSP源程序放在 /examples/jsp 文件夹下,或者置于该文件夹的子目录下。
<2> 把所有的BEAN 的CLASS 文件置于 /examples/WEB-INF/jsp/beans 文件夹下。 JSWDK 的 startserver 命令的 运行脚本会自动在运行时的把这些 .class 添加到 CLASSPATH 变量中。
<3> 如果你的 JSWDK 服务器已经开始运行,请先停掉它,然后重起。
<4> 访问你的 JSP 文件,请通过以下的地址
http://locahost:8080/examples/jsp/[你的JSP 文件名.jsp]

5。什么是 WEB 应用程序?
一个 WEB应用程序是一个映射到一个 Uniform Resource Identifier (URI) 的资源的集合。这些资源可以包括 JSP 文件, Servlets, HTML 文件, 和图片 等等.

举例,所有的有关篮球的资源可以整合到一个 “baseball”目录。所有以 “/baseball”为地址进行的网络访问,都可以映射到“baseball”目录对应的 WEB 应用程序

6。我如何创建一个新的 WEB 应用程序?
<1> 为 WEB 应用程序建立一个文件夹。在下面的例子里,我们建立一个称之为“WEBAPP”文件夹。如果合适,我们也可以设置这个文件夹,使它的结构和Examples 文件夹一样,拥有相同的子目录,jsp, servlets, WEB-INF, 和 images。实现这个目标的方法之一就是把Examples 拷贝一份,然后做必要的修改。
<2> 通过修改 JSWDK 根目录的 webserver.xml 文件来新增一个 WEB 应用程序。

举例,创建一个篮球的应用程序,你可以把如下的内容添加到webserver.xml 文件合适的位置。

<WebApplication id="baseball0" mapping="/baseball" docBase="baseball="/>

请阅读 webserver.xml 文件,了解更多有关语法规则和设置的信息。
然后请参阅下面 有关设置 Servlets, JSP 文件 和 Beans 的问题.

7。我如何在 WEB 应用程序中建立一个Servlets
请按照如下的步骤,在你 WEBAPP 的文件夹里进行相应的操作。

<1> 编译 Servlet ,并决定要把它添加到哪个 WEB 应用程序中
<2> 把 Servlet 的 .class 文件添加到 WEBAPP/WEB-INF/servlets 文件夹下。
<3> 通过把 Servlet 的信息添加到WEBAPP/WEB_INF/servlets.properties 文件中,使得 Servlet 可以被用户访问。正确的添加信息的书写方法,请参考Examples/WEB-INF/mappings.properties 文件。
<4> 你也可以通过把 Servlet 的映射信息添加到WEBAPP/WEB-INF/mappings.properties 文件来实现同样的目的,具体实施的方法,请参考 Examples/WEB-INF/mappings.properties 文件。
<5> 最后重起服务器

你可以通过如下的地址访问你的 Servlet ,在WEB 应用程序 WEBAPP 的 URI 地址上加上 Servlet 的名字 SERVLET_NAME 。

http://localhost:8080/WEBAPP/servlet/SERVLET-NAME

如果你是设置你的 Servlet 通过映射的方式,请按如下的方法去访问它。这里 EXTENSION 表示文件名称的扩展,MAP-PATH 表示一个合理的映射地址。

http://localhost:8080/WEBAPP/foo.EXTENSION

http://localhost:8080/WEBAPP/MAP-PATH

8。我如何在 WEB 应用程序中添加自己的 JSP 和 JAVABEAN
<1> 把 JSP 的源文件 放到 WEB 应用程序文件夹下的目录中去。(就如同上面例子中的 /WEBAPP )
<2> 确认编译过的 JAVABEAN 的路径信息已经在 CLASSPATH 参数中被设置过了。你可以手动的设置 CLASSPATH 参数,或者 编辑 STARTSERVER 命令的运行脚本。
<3> 编辑 WEBAPP/WEB-INF/mappings.properties 文件 和 WEBAPP/WEB-INF/servlets.properties 文件,使得那些可能与 JSP 文件有关联的 JSP SERVLET 可以通过映射的地址来访问 JSP 文件。(可以参考/examples/WEB-INF/ 文件夹里的 .properties 文件,你的映射设置应该是类似的。)
<4> 最后重起服务器

你可以通过和下面示例相似的方式访问你自己的JSP 文件
http://localhost:8080/WEBAPP/yourfile.jsp

9。 URI 在服务器上是如何映射的?
WEB 服务器会把请求的 URI 地址和 WEB 应用程序里的所有前缀象比较,如果没有匹配的,就自动使用默认的设置来替代。

10。如何把数据从 Servlet 传递到 JSP?
可以参考 JSWDK 中 JSP 例子中 有关从 Servlet 传递数据到 JSP 的例子,或者从 JSP 传递数据到 Servlet 的例子。

11。不同的初始参数的意义
keepgenerated:
决定是否保留生成的 JAVA 文件。值可以为 TRUE 或 FALSE 。设置为 TRUE ,将会保留 生成的文件,设置为 FALSE 则会在编译以后删除这些文件。

scratchDir:
设置保留所有生成代码的文件夹。这可以被设置为 DocBase 下的任意文件夹。

largeFile:
值为 TRUE 或着 FALSE ,如果被设置为 TRUE ,则表示所有的静态 HTML 文件都是存放在一个独立的文件夹下的。

sendErrToClient:
值为 TRUE 或者 FALSE,如果被设置为 TRUE ,则所有编译/解析错误都会被发送给用户。

ieClassId:
这个参数用来激活 IE 的 PLUG-IN ,默认的设置是针对 IE4 和 IE5 。如果这个面向 IE 的参数在以后会进一步修改的话,可能会发挥更大的作用。

12。 404错误代表什么?
代表 服务器 不能找到你所请求的 资源。这可能是因为以下的两个原因引起的:
·你输入的 URL 地址错误。
·该 URL 没有被放入当前 的 服务器的主目录。如果你是运行你个人的 WEB 应用程序,请阅读和你个人程序相关的说明和文档。

13。 505 错误代表什么?
505 错误代表 在处理你的请求时 发生了一个“网络服务器错误”。为了找出更多的错误信息,请观察服务器运行窗口的状态显示信息。

这些错误有可能发生在编译 JSP 源文件到 Servlet。JSP 文件或着生成的 JAVA 文件中的语法错误就是引起错误的一个典型的原因。请根据服务器运行窗口的状态显示信息来调试你的程序。

请求的时间也是 另一个可能引起问题的原因。同样,请根据服务器运行窗口的状态显示信息来调试程序。
...全文
24 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

81,091

社区成员

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

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