Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java EE (J2EE) и Spring > Проблема с запуском Struts2 приложения


Автор: MarkHunt 30.12.2013, 16:55
Здравствуйте, всех с наступающим!
Создаю проект с помощью фреймворка Struts2, Maven и Intellij IDEA 12. Далее описание проекта...

pom.xml
Код

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>my-struts2-project</groupId>
    <artifactId>my-struts2-project</artifactId>
    <version>1.0</version>

    <dependencies>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.apache.struts</groupId>
            <artifactId>struts2-core</artifactId>
            <version>2.3.15.3</version>
        </dependency>
    </dependencies>

</project>


web.xml
Код

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/javaee"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
           xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
          http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
           version="2.5">

    <filter>
        <filter-name>struts2</filter-name>
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>

    <filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

</web-app>


struts.xml
Код

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
        "http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>

    <package name="default" namespace="/" extends="struts-default">
    </package>

</struts>


И на всякий случай IndexAction.java и index.jsp
Код

package com.example.action;

import com.opensymphony.xwork2.ActionSupport;

public class IndexAction extends ActionSupport {

    @Override
    public String execute() {
        return SUCCESS;
    }

}



Код

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Test JSP Page</title>
</head>
<body>

<h1>Test JSP Page</h1>

</body>
</html>


Структура проекта
user posted image

И ещё настройки проекта
user posted image

user posted image

user posted image

user posted image

Проект запускается в Tomcat
user posted image

И сама проблема...

При запуске проекта ошибка
user posted image

И вот сама ошибка
user posted image

Хотя, по идее такой класс должен найтись
user posted image

Заранее спасибо за помощь! smile 

Автор: MarkHunt 2.1.2014, 09:16
Цитата(MarkHunt @ 30.12.2013,  16:55)
user posted image

Вроде бы понял в чём проблема. Дело в том, что при создании проекта в IDEA, я сразу создал и артифакты к нему, но, при этом ещё не указал нужные библиотеки для приложения в pom.xml. Я так понимаю, когда добавляются какие-либо библиотеки, необходимо пересоздавать артифакты. При этом артифакты нужно пересоздавать не только в настройках проекта, но и в настройках запуска проекта (там где Tomcat настроен). После этих манипуляций - всё заработало. На картинке можно заметить, что в артифакте отсутствуют библиотеки (<output root>).

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)