首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java相关 >

struts2中跳转路径的有关问题,老是跳转异常

2012-12-14 
struts2中跳转路径的问题,老是跳转错误这是前台jsp代码,目的是通过struts2调用JobAction中listSkill方法,

struts2中跳转路径的问题,老是跳转错误
这是前台jsp代码,目的是通过struts2调用JobAction中listSkill方法,但是调用不到,总是调用assign方法。求原因,及方法。本人初学,万分感谢


<body>
<a href="job.action?method=listSkill">显示工作列表</a>
<a href="edit.jsp">创建/编辑</a>
</body>

下面是struts.xml配置

<struts>
<constant name="struts.devMode" value="true"/>
<package name="default" namespace="/" extends="struts-default">
<action name="job" class="action.JobAction" method="listSkill">
<result name="success">/listSkill.jsp</result>
</action>
<action name="job" class="action.JobAction" method="create">
<result name="success">/listSkill.jsp</result>
</action>
<action name="job" class="action.JobAction" method="assign">
<result name="success">/edit.jsp</result>
</action>
</package>
</struts>

[最优解释]
大哥你配置有问题,你所有的都配置成JOB了 一个表单时可以处理不同的方法,但是不是这样的
<action name="job" class="action.JobAction" >
    <result name="success">/listSkill.jsp</result>
 </action>     
        这样配置一个就可以了,然后跳转时候job!方法名.action就可以了
[其他解释]
试试 <a href="job!listSkill.action">
[其他解释]
不是java类的问题啊!是配置的问题!
action的name都配置成job了???
[其他解释]
是这样吗?没用呀
[其他解释]

还是没用的。。。
[其他解释]
引用:
试试 <a href="job!listSkill.action">

方法调用对了,但是结果视图跳转不对,应该是listSkill.jsp但是却跳到edit.jsp,
为什么??求教。。。
[其他解释]
方法调用对了,应该不会出错啊!!!!!!!!!!!!
[其他解释]
这是action,麻烦试一下,可以吗?
package action;

import bean.Job;
import java.util.*;
import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class JobAction extends ActionSupport{
private Job job;
private int id;
private static List<Job> list = new ArrayList<Job>();
public Job getJob() {
return job;
}
public void setJob(Job job) {
this.job = job;
}
public List<Job> getList() {
return list;
}
public void setList(List<Job> list) {
this.list = list;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String listSkill(){
System.out.print(list.size()+"list=====@@@@@@@@@@@@@@@");
return "success_list";
}
public String create(){
System.out.print(job.getDescribe());
list.add(job);
return "success_create";
}
public String edit(){


System.out.print(id+"----");
if(list.size()>0){
list.get(id).setName(job.getName());
list.get(id).setDescribe(job.getDescribe());
}
return "success";
}
public String assign(){
System.out.print(id+"++++");
System.out.print(list.size()+"=====");
if(list.size()>0){
job.setName(list.get(id).getName());
job.setDescribe(list.get(id).getDescribe());
}
return "success";
}
}


[其他解释]
还有你的视图都是success,跟java方法返回的值不一样啊!!!
[其他解释]
package action;

import bean.Job;
import java.util.*;
import com.opensymphony.xwork2.ActionSupport;

@SuppressWarnings("serial")
public class JobAction extends ActionSupport{
private Job job;
private int id;
private static List<Job> list = new ArrayList<Job>();
public Job getJob() {
return job;
}
public void setJob(Job job) {
this.job = job;
}
public List<Job> getList() {
return list;
}
public void setList(List<Job> list) {
this.list = list;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String listSkill(){
System.out.print(list.size()+"list=====@@@@@@@@@@@@@@@");
return "success";
}
public String create(){
System.out.print(job.getDescribe());
list.add(job);
return "success";
}
public String edit(){
System.out.print(id+"----");
if(list.size()>0){
list.get(id).setName(job.getName());
list.get(id).setDescribe(job.getDescribe());
}
return "success";
}
public String assign(){
System.out.print(id+"++++");
System.out.print(list.size()+"=====");
if(list.size()>0){
job.setName(list.get(id).getName());
job.setDescribe(list.get(id).getDescribe());
}
return "success";
}
}

不行的,好奇怪的问题。。。
[其他解释]
引用:
不是java类的问题啊!是配置的问题!
action的name都配置成job了???

一个表单中,可以处理不同的方法
[其他解释]
引用:
大哥你配置有问题,你所有的都配置成JOB了 一个表单时可以处理不同的方法,但是不是这样的
<action name="job" class="action.JobAction" >
    <result name="success">/listSkill.jsp</result>
 </action>     
        这样配置一个就可以了,然后跳转时候……

还是你厉害,一针见血,问题解决了,受用了,谢谢啦。

热点排行