Я работаю в приложении struts-config 1.2. В моем Struts-config у меня есть запись объявления для формы, и я использовал эту форму для некоторых действий. Сначала я скомпилировал эти объекты с версией Java 1.4. В то время все работало нормально. Теперь я изменил как Java версии 1.6. Я собрал все объекты. Теперь он выдает ошибку, поскольку мой класс формы не может быть приведен к моему расширенному классу Java. Я не знаю, это может быть связано с изменением версии.
Пожалуйста, дайте мне решение для этого, я борюсь с этим в течение 2 дней.
Мой код struct-config:
<form-bean name="xCustomerPortalForm" type="com.portal.form.XCustomerPortalForm" />
...
<action path="/editXPortalCustomerNew"
type="com.xmportal.struts.X2AProcessBridgeAction"
parameter=""
name="xCustomerPortalForm"
scope="request"
validate="false">
<forward name="success_en" path="/jsp/XMPortalCustomerRegistration.jsp" />
<forward name="failure_en" path="/jsp/XMPortalCustomerRegistration.jsp" />
</action>
Это мое сообщение об ошибке:
java.lang.ClassCastException: com.portal.form.XCustomerPortalForm cannot be cast to com.xmportal.struts.X2AFormBase
at com.xmportal.struts.X2AProcessBridgeAction.exposeInScope(X2AProcessBridgeAction.java:205)
at com.xmportal.struts.X2AProcessBridgeAction.checkDataSingle(X2AProcessBridgeAction.java:331)
at com.xmportal.struts.X2AProcessBridgeAction.checkData(X2AProcessBridgeAction.java:361)
at com.xmportal.struts.X2AProcessBridgeAction.checkOutcome(X2AProcessBridgeAction.java:618)
at com.xmportal.struts.X2AProcessBridgeAction.executeLogic(X2AProcessBridgeAction.java:864)
at org.apache.struts.scaffold.BaseHelperAction.executeLogic(Unknown Source)
at com.xmportal.struts.X2AProcessBridgeAction.execute(X2AProcessBridgeAction.java:886)
at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:810)
...
Я получаю ошибку в этом объекте только в X2AProcessBridgeAction
try {
X2AFormBase passedForm = (X2AFormBase) form;
String loginKeyVal= passedForm.getLoginKey();
passedForm.set(bean);
} catch (Exception e) {
e.printStackTrace();
}