hxiaope 2016-12-09 02:30 采纳率: 20%
浏览 1168

ssh2整合问题,struts2 页面访问不到Action里面的方法

struts.xml

 <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 2.1//EN" "http://struts.apache.org/dtds/struts-2.1.dtd">
<struts>
    <constant name="struts.devMode" value="true"/>
    <constant name="struts.i18n.encoding" value="UTF-8" />
    <constant name="struts.convention.result.path" value="/WEB-INF/jsp"/>
    <constant name="struts.convention.package.locators" value="web,action"/>
    <constant name="struts.objectFactory" value="spring"/>
    <constant name="struts.configuration.xml.reload" value="true"/>
    <package name="demo" extends="struts-default" namespace="/demo" />
</struts>

web.xml

 <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
        <init-param>
        <param-name>filterConfig</param-name>
        <param-value>classpath:struts/struts.xml</param-value>
    </init-param>
    </filter>

    <!-- 配置struts2映射 -->
    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

Action.java

 package com.sshf.action;
import java.util.Map;
import javax.annotation.Resource;
import org.apache.struts2.convention.annotation.Action;
import org.apache.struts2.convention.annotation.Namespace;
import org.apache.struts2.convention.annotation.Result;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Component;

import com.opensymphony.xwork2.ActionContext;
import com.opensymphony.xwork2.ActionSupport;
import com.sshf.model.PhsaUser;
import com.sshf.service.UserService;

@Component
@Namespace("/demo")
@Scope("prototype")
public class UserAction extends ActionSupport{

    private static final long serialVersionUID = 1L;

    @Resource
    private UserService userService;

    private PhsaUser user;
    private String id;

    @Action(value="queryUser",results={
            @Result(name="success",location="/WEB-INF/jsp/success.jsp"),
            @Result(name="error",location="/WEB-INF/jsp/error.jsp")})
    public String queryUser() throws Exception{
        //Integer userId=this.getUser().getId();
        Integer uId=Integer.parseInt(this.getId());
        PhsaUser user = userService.queryById(uId);
        if(user!=null){
            ActionContext actionContext = ActionContext.getContext();
            Map<String,Object> session= actionContext.getSession();
            session.put("user",user);
            return SUCCESS;
        }
        return ERROR;
    }
    ........id set/get...
}

queryUser.jsp


<form action="/demo/queryUser" method="post">
    查找id:<input type="text" name="id"/><br>
    <input type="submit" value="check"/>    
</form>

  • 写回答

5条回答 默认 最新

  • qq_34339678 2016-12-09 02:35
    关注

    form表单要提交全路径

    评论

报告相同问题?

悬赏问题

  • ¥17 pro*C预编译“闪回查询”报错SCN不能识别
  • ¥15 微信会员卡接入微信支付商户号收款
  • ¥15 如何获取烟草零售终端数据
  • ¥15 数学建模招标中位数问题
  • ¥15 phython路径名过长报错 不知道什么问题
  • ¥15 深度学习中模型转换该怎么实现
  • ¥15 HLs设计手写数字识别程序编译通不过
  • ¥15 Stata外部命令安装问题求帮助!
  • ¥15 从键盘随机输入A-H中的一串字符串,用七段数码管方法进行绘制。提交代码及运行截图。
  • ¥15 TYPCE母转母,插入认方向