Aaronlong31
BlogJava
::
首页
::
联系
::
聚合
::
管理
12 Posts :: 3 Stories :: 17 Comments :: 0 Trackbacks
常用链接
我的随笔
我的评论
我的参与
最新评论
留言簿
给我留言
查看公开留言
查看私人留言
我参与的团队
随笔分类
Linux命令(1)
随笔档案
2010年8月 (4)
2010年7月 (2)
2010年6月 (1)
2010年2月 (1)
2010年1月 (4)
文章档案
2010年6月 (1)
2010年5月 (1)
2010年1月 (1)
收藏夹
jbpm(2)
搜索
最新评论
1. re: 关于用jquery传递json给struts2中的复杂对象的方法
我果然还是太菜,为何现在才看到
--帅比
2. re: 关于用jquery传递json给struts2中的复杂对象的方法[未登录]
评论内容较长,点击标题查看
--林
3. re: 关于用jquery传递json给struts2中的复杂对象的方法[未登录]
1282681868 谢谢了
--林
4. re: 关于用jquery传递json给struts2中的复杂对象的方法
@林
晚上帮你弄个吧,你告诉我Q
--Aaronlong31
5. re: 关于用jquery传递json给struts2中的复杂对象的方法[未登录]
求例子
--林
阅读排行榜
1. 关于用jquery传递json给struts2中的复杂对象的方法(12622)
2. 去掉PowerDesigner中生成SQL语句的注释(comment)(4639)
3. powerdesigner 几个基本问题(1482)
4. mysql 常见错误号对照表(837)
5. 转: JPA & Hibernate 注解(585)
评论排行榜
1. 关于用jquery传递json给struts2中的复杂对象的方法(17)
2. Ant简介(转载)(0)
3. Mysql导入导出数据(结构)(0)
4. 转: JPA & Hibernate 注解(0)
5. J2EE系统异常的处理准则(转自51blog)(0)
浅谈Eclipse调用Tomcat服务的原理 文章出处:飞诺网(www.firnow.com):http://dev.firnow.com/course/3_program/java/javajs/20100522/203513.html
首先,在Eclipse中新建一个Hello工程,Workspace的位置在c:\eclipse\workspace,所以hello工程的位置就是在%Workspace%\hello\这个文件夹中。
然后在hello工程中添加一个hello.jsp或者index.jsp都可以(index.jsp会方便一点),内容随便写点,如在body标签之间中就一个Hello Eclipse and Tomcat6.0!然后Run as中选择“Run on server”,这是就会调用已经配置好的Tomcat服务器(此时把你的Tomcat服务关闭,让Eclipse来调用就可以了,否则会有小小的冲突),这时在浏览器(Eclipse当中的Web Browser)中就有了我们想看到的东西,其中url=http://localhost/hello/(隐含index.jsp)!
Hello Eclipse and Tomcat6.0!
!重点来了,Eclipse这期间干了什么?Tomcat的虚拟目录中,你没有设置Hello,怎么能运行?
1.在MyEclipse的做法(MyEclipse有,Eclipse没有的方法)是:将你的工程拷贝一份到Tomcat目录中的webapps\目录当中(这个目录中,不需设置,tomcat就会把文件夹下当做一个站点,但是webapps\这个目录下的html文件是不会解析的,根目录URL\解析的是ROOT文件夹下的网页文件),这样Tomcat就多了一个站点,自然可以访问。
2.在Eclipse中的做法不太一样,Eclipse调用了JDK中的javaw.exe,并且指定了许多参数,如:
%JAVA_HOME%\bin\javaw.exe -Dcatalina.base=C:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1 "-Dcatalina.home=c:\Tomcat 6.0" -Dwtp.deploy=C:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps "-Djava
."
如果你的windows任务管理器有印象路径(或者其他任务管理工具)你就会看到这行命令行,而此时,任务列表中没有Tomcat.exe这个服务进程,但是你却可以访问Tomcat服务器的hello工程的页面。
此时,打开文件夹:C:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1
你可以看到的是类似Tomcat目录下的结构,在wtpwebapps中就有你所有的工程拷贝(即Workspace目录下的project)。如果你访问http://localhost可能提示你404找不到页面,但是在你的Tomcat下的ROOT里确实有文件,并且现在你用Tomcat的webApps下的站点都无法使用,原因就在于Eclipse更改了(使用参数,临时更改,关闭Eclipse中的Tomcat服务,Tomcat恢复原样)Tomcat的webapp主目录(我想就是-Dcatalina.base=...)
以下用%tmp1%代替C:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1;
用记事本打开%tmp1%\conf\web.xml(和tomcat文件夹下的结构一样),这是配置虚拟目录的文件,我们可以找到host标签,没什么不同(这里appBase依旧是webapps,但是已经映射到了%tmp1%\wtpwebapps了),其实这些文件应该是先从Tomcat的conf文件夹里拷贝到这里,然后根据Eclipse的工程进行了修改,我们看。
<Host appBase="webapps" autoDeploy="true" name="localhost" unpackWARs="true" xmlNamespaceAware="false" xmlValidation="false">
在下面就有了两个Context的虚拟目录项;是三个哦。。第一个指定了ROOT(这里面什么文件也没,所以无法访问http://localhost/),和工程没关系,第二个和第三个是我的hello和helloworld工程,看看,都有了docBase和相对url的path了吧。所以在浏览器中才能访问到hello和helloworld的jsp页面。
<
Context
docBase
="C:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\ROOT"
path
=""
reloadable
="false"
/>
<
Context
docBase
="C:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\HelloWorld"
path
="/HelloWorld"
reloadable
="true"
source
="org.eclipse.jst.jee.server:HelloWorld"
/>
<
Context
docBase
="C:\eclipse\workspace\.metadata\.plugins\org.eclipse.wst.server.core\tmp1\wtpwebapps\hello"
path
="/hello"
reloadable
="true"
source
="org.eclipse.jst.jee.server:hello"
/></
Host
>
就这样吧,看看你还有什么疑问?
文章出处:飞诺网(www.firnow.com):http://dev.firnow.com/course/3_program/java/javajs/20100522/203513.html
posted on 2010-05-28 12:55
Aaronlong31
阅读(1742)
评论(0)
编辑
收藏
新用户注册
刷新评论列表
只有注册用户
登录
后才能发表评论。
网站导航:
博客园
IT新闻
知识库
C++博客
博问
管理
Copyright @ Aaronlong31
Powered by:
.Text
and
ASP.NET
Theme by:
.NET Monster