0

1.  我正在制作一个 Web 应用程序,我需要在其中与数据库交互并获取值列表并将它们填充到下拉列表中(这是 index.jsp 中的表单元素)。我的表单有一个下拉列表,我打算用区号填充它,这些区号又出现在数据库表中。我想知道我是否可以将动作作为初始打击?即我可以在 web.xml 中作为欢迎列表的一部分触发一个动作吗?

2.  另外,我遇​​到一个问题,当我在 Websphere 应用程序服务器上部署应用程序并以 服务器名称/项目名称访问链接时 - 它给出了一个错误说明

消息: •没有为命名空间/和动作名称映射的动作。
 

所以我被迫以 servername/projectname/index.jsp的身份访问应用程序 - 运行良好!我无法理解这个问题,因为它没有出现在我的本地机器上,只有当我将它部署在服务器上时。请在下面找到我的 web.xml

    <?xml 版本="1.0" 编码="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>/home.jsp</welcome-file>
      </welcome-file-list>
      <过滤器>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
      </过滤器>
      <过滤器映射>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
      </filter-mapping>
    </web-app>

和我的 struts.xml :

    <?xml 版本="1.0" 编码="UTF-8"?>

    <支柱>
        <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>
            </行动>
            </包>
    </struts>

请注意,我确实在我的包声明中添加了 namepace="/"。请帮助 :D 在此先感谢

4

1 回答 1

0

尝试使用 servername/projectname/hit 调用

如果在 struts 配置中添加 default-action-ref 标签,则可以使用 servername/projectname 调用,

<struts>
...
<package>
...
<default-action-ref name="hit"/> 
... 
</package>
</struts>

但请记住,此行将转发所有属于 / 命名空间但不存在映射的请求,例如:

servername/projectname 将由 => servername/projectname/hit 处理 servername/projectname/AnyValidName 将由 => servername/projectname/hit servername/projectname/Mohamed_Sulibi 将由 => servername/projectname/hit 处理

于 2014-05-20T08:27:00.057 回答