extjs+ssh2 只能执行到action层
在做毕业设计,用的是extjs+ssh2。。。直接说问题在js代码中有一处建立store的时候用action做代理
var employeeStore = new Ext.data.Store({
proxy: new Ext.data.HttpProxy({
url: "addEmployeeWorkAction?employeeid="+emid
}),
reader: new Ext.data.JsonReader({
totalProperty: 'results',
root: 'items',
id: 'employeeid'
},
['employeeid','employeename','position','department','photo']
)
});
上面employeeid是从页面传给action的参数,action的代码如下:
package action;
import org.apache.struts2.ServletActionContext;
import com.opensymphony.xwork2.ActionSupport;
import service.AddEmployeeWorkService;
public class AddEmployeeWorkAction extends ActionSupport{
/**
*
*/
private static final long serialVersionUID = 1L;
private AddEmployeeWorkService addEmployeeWorkService;
private String employeeid;
public String execute(){
System.out.print(employeeid);
try{
String json = addEmployeeWorkService.getEmployeeInfo(employeeid);
System.out.print(json);
ServletActionContext.getResponse().getWriter().write(json);
}catch(Exception e){
e.printStackTrace();
}
return SUCCESS;
}
public AddEmployeeWorkService getAddEmployeeWorkService() {
return addEmployeeWorkService;
}
public void setAddEmployeeWorkService(
AddEmployeeWorkService addEmployeeWorkService) {
this.addEmployeeWorkService = addEmployeeWorkService;
}
public String getEmployeeid() {
return employeeid;
}
public void setEmployeeid(String employeeid) {
this.employeeid = employeeid;
}
}
执行到action的时候问题就出现了,addEmployeeWorkService的函数没有执行,然后我debug了一下,发现service的实现根本没有注入,然后我检查了无数遍applicationContext.xml这个文件,配置应该没有问题
<bean id="addEmployeeWorkDAO" class="dao.impl.AddEmployeeWorkDAOImpl" />
<bean id="addEmployeeWorkService" class="service.impl.AddEmployeeWorkServiceImpl" >
<property name="addEmployeeWorkDAO">
<ref bean="addEmployeeWorkDAO" />
</property>
</bean>
<bean id="addEmployeeWorkAction" class="action.AddEmployeeWorkAction">
<property name="addEmployeeWorkService">
<ref bean="addEmployeeWorkService" />
</property>
</bean>
然后service.impl.AddEmployeeWorkServiceImpl和dao.impl.AddEmployeeWorkDAOImpl的代码如下:
package service.impl;
import dao.AddEmployeeWorkDAO;
import service.AddEmployeeWorkService;
public class AddEmployeeWorkServiceImpl implements AddEmployeeWorkService{
private AddEmployeeWorkDAO addEmployeeWorkDAO;
public String getEmployeeInfo(String employeeid) {
// TODO Auto-generated method stub
System.out.print("1");
return addEmployeeWorkDAO.getEmployeeInfo(employeeid);
}
public AddEmployeeWorkDAO getAddEmployeeWorkDAO() {
return addEmployeeWorkDAO;
}
public void setAddEmployeeWorkDAO(AddEmployeeWorkDAO addEmployeeWorkDAO) {
this.addEmployeeWorkDAO = addEmployeeWorkDAO;
}
}
package dao.impl;
import hibernate.HibernateSessionFactory;
import java.util.List;
import net.sf.json.JSONObject;
import org.hibernate.Query;
import org.hibernate.Session;
import dao.AddEmployeeWorkDAO;
import Json.TotalJson;
public class AddEmployeeWorkDAOImpl implements AddEmployeeWorkDAO{
public String getEmployeeInfo(String employeeid) {
// TODO Auto-generated method stub
System.out.print("2");
Session session = HibernateSessionFactory.getSession();
String json = null;
try{
Query query = session.createQuery("from Employee where employeeid='"+employeeid+"'");
List list = query.list();
System.out.print("here");
TotalJson total = new TotalJson();
total.setResults(list.size());
total.setItems(list);
JSONObject JsonObject = JSONObject.fromObject(total);
json = JsonObject.toString();
}catch(Exception e){
e.printStackTrace();
}
return json;
}
}
实在解决不了了。。求各位大神帮忙 Ext JS SSH2 --------------------编程问答-------------------- 别沉啊 - - 沉了就跪了 --------------------编程问答-------------------- 自己顶上去 = = --------------------编程问答-------------------- 啥都没改。。。自己好了
补充:Java , Web 开发