1。的 我正在制作一个我需要与之交互的Web应用程序 数据库并获取值列表并在下拉列表中填充它们 (这是index.jsp中的表单元素)。我的表格有一个下拉列表 我打算填充区号,而区号则依次存在 数据库表。我想知道我是否可以发起一个动作作为初始 击中?即我可以发起一项行动,作为欢迎名单的一部分 web.xml?
2。的 此外,我面临一个问题,当我在一个部署应用程序 Websphere应用程序服务器并访问链接 服务器名/项目名称的 - 它给出了一个错误陈述
Messages: •There is no Action mapped for namespace / and action name .
所以我被迫访问该应用程序 服务器名/项目名称/ index.jsp的的 - 哪个运行正常!我没有理解这个问题,因为它没有显示出来 在我的本地机器上,只有当我在服务器上部署它时。请 在我的web.xml下面找到
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>FirstRtWebGUIRevive</display-name> <welcome-file-list> <welcome-file>/home.jsp</welcome-file> </welcome-file-list> <filter> <filter-name>struts2</filter-name> <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class> </filter> <filter-mapping> <filter-name>struts2</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>
并使用我的struts.xml:
<?xml version="1.0" encoding="UTF-8"?> <struts> <constant name="struts.devMode" value="true" /> <package name="default" extends="struts-default" namespace="/"> <action name="hit" class="com.action.MakeTransaction" method="concurrentPull"> <result name="success">/resultMain.jsp</result> <result name="empty">/homeRedirect.jsp</result> <result name="noState">/homeRedirectNoState.jsp</result> </action> </package> </struts>
请注意,我确实在我的包声明中添加了namepace =“/”。和蔼 帮助:D提前致谢
答案 0 :(得分:0)
尝试使用servername / projectname / hit
进行调用如果在struts配置中添加default-action-ref标记,可以使用servername / projectname调用,
<struts>
...
<package>
...
<default-action-ref name="hit"/>
...
</package>
</struts>
但请记住,此行将转发属于/ namespace的所有请求,这些请求不存在映射,例如:
servername / projectname将通过=&gt;处理服务器名称/项目名称/命中 servername / projectname / AnyValidName将通过=&gt;处理服务器名称/项目名称/命中 servername / projectname / Mohamed_Sulibi将处理=&gt;服务器名/项目名称/命中