请问EJB3.0和STRUTS2.0整合的问题,谢谢了
我的程序好像始终跑不起来,报错有时候是404,有时候是500.帮我看看怎么回事吧。
运行环境是NetBeans 加 GlassFish V2 JDK 是1.5的struts-xml: <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<!-- Add packages here -->
<include file="struts-default.xml" />
<package name="emp.Action" extends="struts-default">
<action name="AddEmp" class="emp.Action.AddEmpAction">
<result name="ok">/checkOver.jsp </result>
<result name="fault">/checkError.jsp </result>
</action>
</package>
</struts>
EJB的bean
package emp.Interface;
import emp.FormBean.EmpInfo;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.ejb.Stateless;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
/**
*
* @author liuaichang
*/
@Stateless
public class AddEmpServiceBean implements AddEmpService{
private Date workStart;
private Date birth;
private SimpleDateFormat sd;
@PersistenceContext(unitName = "AddEmpService")
protected EntityManager em;
public EntityManager getEntityManager() {
return em;
}
public int addEmpInfo(String empId, String familyName, String firstName, String sex, String birthday, String address, String phoneNumber, String mobile, String faxNumber, String email, String offName, String occupation, String workStartDate) {
sd=new java.text.SimpleDateFormat("yyyy/MM/dd");
try {
birth = sd.parse(birthday);
} catch (ParseException ex) {
Logger.getLogger(AddEmpServiceBean.class.getName()).log(Level.SEVERE, null, ex);
}
try {
workStart = sd.parse(workStartDate);
} catch (ParseException ex) {
Logger.getLogger(AddEmpServiceBean.class.getName()).log(Level.SEVERE, null, ex);
}
EmpInfo emp1=new EmpInfo(empId);
System.out.println(birth);
System.out.println(workStart);
emp1.setAddress(address);
emp1.setBirthday(birth);
emp1.setEmail(email);
emp1.setFamilyName(familyName);
emp1.setFaxNumber(faxNumber);
emp1.setFirstName(firstName);
emp1.setMobile(mobile);
emp1.setOccupation(occupation);
emp1.setOffName(offName);
emp1.setPhoneNumber(phoneNumber);
emp1.setSex(sex);
emp1.setWorkStartDate(workStart);
em.persist(emp1);
return 1;
}
}
action:
package emp.Action;
import emp.Interface.AddEmpService;
import javax.ejb.EJB;
/**
*
* @author liuaichang
*/
public class AddEmpAction {
@EJB AddEmpService service;
private String empId;
private String sex;
private String familyName;
private String firstName;
private String email;
private String mobile;
private String offName;
private String occupation;
private String year1;
private String month1;
private String day1;
private String year2;
private String month;
private String day;
private String adress;
private String faxNumber;
private String phoneNumber;
public String getAdress() {
return adress;
}
public String getDay() {
return day;
}
public String getDay1() {
return day1;
}
public String getEmail() {
return email;
}
public String getEmpId() {
return empId;
}
public String getFamilyName() {
return familyName;
}
public String getFaxNumber() {
return faxNumber;
}
public String getFirstName() {
return firstName;
}
public String getMobile() {
return mobile;
}
public String getMonth() {
return month;
}
public String getMonth1() {
return month1;
}
public String getOccupation() {
return occupation;
}
public String getOffName() {
return offName;
}
public String getPhoneNumber() {
return phoneNumber;
}
public String getSex() {
return sex;
}
public String getYear1() {
return year1;
}
public String getYear2() {
return year2;
}
public void setAdress(String adress) {
this.adress = adress;
}
public void setDay(String day) {
this.day = day;
}
public void setDay1(String day1) {
this.day1 = day1;
}
public void setEmail(String email) {
this.email = email;
}
public void setEmpId(String empId) {
this.empId = empId;
}
public void setFamilyName(String familyName) {
this.familyName = familyName;
}
public void setFaxNumber(String faxNumber) {
this.faxNumber = faxNumber;
}
public void setFirstName(String firstName) {
this.firstName = firstName;
}
public void setMobile(String mobile) {
this.mobile = mobile;
}
public void setMonth(String month) {
this.month = month;
}
public void setMonth1(String month1) {
this.month1 = month1;
}
public void setOccupation(String occupation) {
this.occupation = occupation;
}
public void setOffName(String offName) {
this.offName = offName;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public void setSex(String sex) {
this.sex = sex;
}
public void setYear1(String year1) {
this.year1 = year1;
}
public void setYear2(String year2) {
this.year2 = year2;
}
public String execute() throws Exception
{
String a=getMonth1();
String b=getDay1();
String x=getMonth();
String y=getDay();
if (a.length() < 2){
a = "0" + a;
}
if (b.length() < 2)
{
b = "0" + b;
}
if (x.length() < 2)
{
x = "0" + x;
}
if (y.length() < 2)
{
y = "0" + y;
}
String birthday=getYear1()+"/"+a+"/"+b;
String workStartDate=getYear2()+"/"+x+"/"+y;
if(service.addEmpInfo(getEmpId(), getFamilyName(), getFirstName(), getSex(), birthday, getAdress(), getPhoneNumber(), getMobile(), getFaxNumber(), getEmail(),getOffName(), getOccupation(), workStartDate) == 1){
return "ok";
}
return "fault";
}
}