Struts 1.3 Разное поведение на Windows и Linux
У меня есть приложение Struts 1.3, работающее на Apache Tomcat-8.0.3. В настоящее время оно размещено на сервере Windows, и мы планируем перенести его на Linux CentOS 6. Проект работает должным образом на сервере Windows. Когда тот же файл развертывания развернут на Linux это дает следующую ошибку:
HTTP Status 500 - No action instance for path /home could be created
Мой index.jsp (страница приветствия) состоит из этого:
<%jsp:forward="home.do"%>
где мой home.do перенаправляет на HomeAction. Edit: // часть Struts-config
<form-beans>
<form-bean name="home" type="com.compname.appname.form.HomeForm"/>
</form-beans>
<global-forwards>
<forward name="welcome" path="/home.do"/>
</global-forwards>
<action-mappings>
<action path="/home" type="com.compname.appname.action.HomeAction" name="home" scope="request" input="/" validate="false">
<forward name="success" path="home.jsp.tld"/>
</action>
</action-mappings>
//Action classes
public class HomeAction extends BaseAction {
@Override
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception {
HomeForm frm = (HomeForm) form;
HttpSession appSession = request.getSession();
String SUCCESS = "success";
//code here
return mapping.findForward(SUCCESS);
}
}
public class BaseAction extends org.apache.struts.action.Action {
//reusable variables and methods
}
2 ответа
Ну, виновником было что-то еще. Не было ничего общего с Java, Tomcat или даже с версией Struts. Чтобы получить размер экрана, который я использовал Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
из пакета java.awt. Это прекрасно работает в Windows, но в Linux получило исключение. Кроме того, я обнаружил, что это не тот метод, который я должен использовать для получения размера экрана по размеру "клиента", поэтому я удалил его, а затем он заработал. Хорошо. Большое спасибо всем, кто помогает. Я надеюсь, что мой ответ поможет кому-то еще.
Файловая система в Linux отличается от Windows, пожалуйста, попробуйте:
<%jsp:forward="/home.do"%>
или же, пожалуйста, опубликуйте дополнительную информацию, такую как ваш struts.xml или класс действий, которые могут помочь найти проблему.