在jsp中,用import="mypackage.*"时总提示找不到包,为什么呀?

peacock_king 2002-02-13 12:49:40
我已经把mypackage路径加入classpath了
我的配置是win2k + j2ee1.3 + tomcat4.0
...全文
148 点赞 收藏 4
写回复
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
peacock_king 2002-02-15
还是不行
楼上的ggyy兄讲了一大通对我一点用都没有啊
我用的是tomcat
不过还是谢谢各位的回复,给分
回复
ggyy 2002-02-14
(1)////////////bean的路径
///////////////////////////////
JavaBean是一种Java类 (class),通过封装属性和方法成为具有某种功能或者处理某个业务的对象。
JavaBean被组织成为package(数据包)以便进行管理,实际上就是把一组JavaBean一起放在某某目录中,
每个类的定义前加上package某某,本例中为test。目录test必须放在系统环境CLASSPATH包含的目录下,
系统才能找到其中的JavaBean。JSWDK在缺省状态下将\jswdk-1.0.1\webpages\WEB-INF\jsp\beans\
加入CLASSPATH。建立自己的JavaBean和package时,就放在这个目录中也不失为一种简易的方法。


  比如我们再次编写的javabean文件就要放在jswdk-1.0.1\webpages\WEB-INF\jsp\beans\test下面
helloWorld.java编辑好后,在DOS状态下,进入目录\jswdk-1.0.1\webpages\WEB-INF\jsp\beans\,
用JDK的javac命令编译helloWorld.java那么jsp中就要这样调用:
<jsp:useBean id="helloBean" scope="session" class="test.helloWorld" />
////////
(2) jsp的路径
////////////////
JSWDK中包含的Web服务器的文档目录在缺省状态下为\jswdk-1.0.1\webpages,主文档在缺省状态下为index.html
和index.jsp。也就是说访问http://localhost:8080等于访问\jswdk-1.0.1\webpages\index.html。 用文本编辑器,
如Windows中的记事本(Notepad),创建一个文本文件hi.jsp,保存在\jswdk-1.0.1\webpages\目录下
在浏览器的地址栏中键入http://localhost:8080/hi.jsp
//////////
JSWDK缺省的文档目录是\jswdk-1.0.1\webpages,在此目录下可以建立子目录,
例如\jswdk-1.0.1\webpages\test,就能在浏览器中用http://localhost/test访问这个目录,
为了使得这个子目录能执行JSP程序,还必须在webserver.xml中的<Service></Service>节加入:

  <WebApplication id="test" mapping="/test" docBase="webpages/test" />

  并且,还必须建立\jswdk-1.0.1\webpages\test\WEB-INF目录,并从\jswdk-1.0.1\webpages\WEB-INF目录
中复制过来以下四个文件:mappings.properties、mime.properties、servlets.properties以及webapp.properties。
完成这些过程,才能通知JSWDK的Web服务器执行http://localhost/test 中的JSP程序。
///////////
(3)servlet的编译和安装
/////////
Servlet的编译和安装

  不同的Web服务器上安装Servlet的具体细节可能不同,请参考Web服务器文档了解更权威的说明。
假定使用Java Web Server(JWS)2.0,则Servlet应该安装到JWS安装目录的servlets子目录下。在本文中,
为了避免同一服务器上不同用户的Servlet命名冲突,我们把所有Servlet都放入一个独立的包hall中;
如果你和其他人共用一个服务器,而且该服务器没有“虚拟服务器”机制来避免这种命名冲突,那么最好也使用包。
把Servlet放入了包hall之后,HelloWorld.java实际上是放在servlets目录的hall子目录下。
  大多数其他服务器的配置方法也相似,除了JWS之外,本文的Servlet和JSP示例已经在BEA WebLogic和
IBM WebSphere 3.0下经过测试。WebSphere具有优秀的虚拟服务器机制,因此,如果只是为了避免命名冲突的话并非
一定要用包。对于没有使用过包的初学者,下面我们介绍编译包里面的类的两种方法。

  一种方法是设置CLASSPATH,使其指向实际存放Servlet的目录的上一级目录(Servlet主目录),
然后在该目录中按正常的方式编译。例如,如果Servlet的主目录是C:\JavaWebServer\servlets,
包的名字(即主目录下的子目录名字)是hall,在Windows下,编译过程如下:

DOS> set CLASSPATH=C:\JavaWebServer\servlets;%CLASSPATH%
DOS> cd C:\JavaWebServer\servlets\hall
DOS> javac YourServlet.java

  第二种编译包里面的Servlet的方法是进入Servlet主目录,执行“javac directory\YourServlet.java”
(Windows)或者“javac directory/YourServlet.java”(Unix)。例如,再次假定Servlet主目录是
C:\JavaWebServer\servlets,包的名字是hall,在Windows中编译过程如下:

DOS> cd C:\JavaWebServer\servlets
DOS> javac hall\YourServlet.java

  注意在Windows下,大多数JDK 1.1版本的javac要求目录名字后面加反斜杠(\)。JDK1.2已经改正这个问题,
然而由于许多Web服务器仍旧使用JDK 1.1,因此大量的Servlet开发者仍旧在使用JDK 1.1。

  最后,Javac还有一个高级选项用于支持源代码和.class文件的分开放置,即你可以用javac的“-d”选项
把.class文件安装到Web服务器所要求的目录。

  3.2.3 运行Servlet

  在Java Web Server下,Servlet应该放到JWS安装目录的servlets子目录下,
而调用Servlet的URL是http://host/servlet/ServletName。注意子目录的名字是servlets(带“s”),
而URL使用的是“servlet”。由于HelloWorld Servlet放入包hall,
因此调用它的URL应该是http://host/servlet/hall.HelloWorld。在其他的服务器上,
安装和调用Servlet的方法可能略有不同。

  大多数Web服务器还允许定义Servlet的别名,因此Servlet也可能用http://host/any-path/any-file.html
形式的URL调用。具体如何进行配置完全依赖于服务器类型,请参考服务器文档了解细节。

回复
cxmlc 2002-02-13
你安j2se没有,
设置classpath没、
回复
jiyunang 2002-02-13
classpath=mypackage路径+\mypackage
perhaps
回复
发动态
发帖子
Web 开发
创建于2007-09-28

7.9w+

社区成员

Java Web 开发
申请成为版主
社区公告
暂无公告