Eclipse Indigo运行Struts2的几个问题

Posted scruffybear

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Eclipse Indigo运行Struts2的几个问题相关的知识,希望对你有一定的参考价值。

文章目录

小结

在Eclipse Indigo的集成环境中运行Apache Tomcat v7.0和Struts2,碰到几个问题,找不到Tomcat v7.0, Java Compiler不匹配,找不到Run at Server,等等,进行了解决。

问题及解决

进入Tomcat管理界面

进入Tomcat管理界面需要访问地址:http://localhost:8080/manager/
用户名密码是在以下配置文件里配置的: C:\\apache-tomcat-7.0.109\\conf\\tomcat-users.xml

<role rolename="manager-gui"/>
<role rolename="admin"/>
<role rolename="manager-script"/>
<role rolename="manager-jmx"/>
<role rolename="manager-status"/>
<role rolename="admin-gui"/>
<role rolename="admin-script"/>
<role rolename="tomcat"/>
<role rolename="manager"/>
<user username="tomcat" password="xxxxxx" roles="manager-gui,manager-script,manager-jmx,manager-status,admin-gui,admin-script,tomcat,manager,admin"/>

在这里,用户名,密码是:username="tomcat" password="xxxxxx"

配置StrutsTutorial项目

在Tomcat的配置文件中C:\\apache-tomcat-7.0.109\\conf\\server.xml进行配置:

      <Host name="localhost"  appBase="webapps"
            unpackWARs="true" autoDeploy="true">

        <!-- SingleSignOn valve, share authentication between web applications
             Documentation at: /docs/config/valve.html -->
        <!--
        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />
        -->

        <!-- Access log processes all example.
             Documentation at: /docs/config/valve.html
             Note: The pattern used is equivalent to using pattern="common" -->
        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
               prefix="localhost_access_log." suffix=".txt"
               pattern="%h %l %u %t &quot;%r&quot; %s %b" />
<Context path="/StrutsTutorial" reloadable="true" docBase="C:\\Users\\HuiLin_Xiong\\workspace\\StrutsTutorial" workDir="C:\\Users\\HuiLin_Xiong\\workspace\\StrutsTutorial\\work" />


      </Host>

Eclipse error: Target runtime Apache Tomcat v7.0 is not defined

参考Eclipse error: Target runtime Apache Tomcat v7.0 is not defined , Eclipse返回找不到Tomcat v7.0的错误。这里需要安装 JST Server adapters,在Help--> Eclipse Marketplace查找JST Server adapters进行安装,就可以找到Project FacetApache Tomcat v7.0进行配置,这个问题就解决了。

Java compiler level does not match

参考Java compiler level does not match the version of the installed Java project facet
Properties --> Compiler Compliance Level设置正确的JDK版本号,这个问题解决。

“Servers” view missing from Eclipse Indigo

参考"Servers" view missing from Eclipse Indigo

到这里Window > Show View > Other...进行设置,即可解决。

Struct2的Struct.xml的设置

以下的Struct.xml的设置:

	<package name="login" namespace="/login" extends="struts-default">
		<action name="toLogin">
			<result>/pages/login.jsp</result>
		</action>

		<action name="doLogin" class="cn.hxex.struts.login.action.LoginAction">
			<result name="input">/pages/login.jsp</result>
			<result name="error">/pages/login.jsp</result>
			<result name="success">/pages/loginsuccess.jsp</result>
		</action>
	</package>

Tomcat的服务器运行起来以后,在地址栏里输入:http://127.0.0.1:8080/StrutsTutorial/login/toLogin.action即可运行相应的程序。

也就是以下格式:http://IP:port/Web应用名称/namespace/Action名字.action
注意,根据前面的配置在C:\\Users\\HuiLin_Xiong\\workspace\\StrutsTutorial\\work里的各种文件需要配置好。

参考

Eclipse error: Target runtime Apache Tomcat v7.0 is not defined
Java compiler level does not match the version of the installed Java project facet
“Servers” view missing from Eclipse Indigo
How do I kill the process currently using a port on localhost in Windows?

以上是关于Eclipse Indigo运行Struts2的几个问题的主要内容,如果未能解决你的问题,请参考以下文章

Eclipse Indigo 无法在外部 Web 浏览器上运行 PHP 页面

谷歌应用引擎插件安装后 Eclipse(Indigo) 启动失败

Flash builder 4.6 到 Eclipse indigo

为什么我在Eclipse-Indigo-Birt-Viewer上获得此异常?

Eclipse Indigo 3.7.0 安装GIT插件

使用 sencha touch 和 eclipse indigo