복붙노트

[SPRING] Struts에서 구성을로드 할 수 없습니다.

SPRING

Struts에서 구성을로드 할 수 없습니다.

STRUTS SPRING을 구현하고 ONLINE INSAMATION을 통일시켜야합니다. 아파치 톰캣 7.0.42를 사용하여 Eclipse Kepler에서 프로젝트를 실행하는 동안 다음과 같은 오류가 발생합니다.

**HTTP Status 404 - /OnlineExam/registration.jsp**
**Description:**The requested resource is not available.

콘솔 로그에서 다음과 같은 사항이 나타납니다.

    SEVERE: Exception starting filter struts2
Unable to load configuration. - action - file:/C:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps/iSAS/WEB-INF/classes/struts.xml:16:73
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:431)
    at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:69)
    at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:51)
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:281)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:262)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:107)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4775)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5452)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559)
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:724)
Caused by: Unable to load configuration. - action - file:/C:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps/iSAS/WEB-INF/classes/struts.xml:16:73
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:58)
    at org.apache.struts2.dispatcher.Dispatcher.init_PreloadConfiguration(Dispatcher.java:374)
    at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:418)
    ... 14 more
Caused by: Error building results for action userRegistration in namespace  - action - file:/C:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps/iSAS/WEB-INF/classes/struts.xml:16:73
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:367)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addPackage(XmlConfigurationProvider.java:468)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.loadPackages(XmlConfigurationProvider.java:264)
    at org.apache.struts2.config.StrutsXmlConfigurationProvider.loadPackages(StrutsXmlConfigurationProvider.java:111)
    at com.opensymphony.xwork2.config.impl.DefaultConfiguration.reloadContainer(DefaultConfiguration.java:193)
    at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:55)
    ... 16 more
Caused by: There is no result type defined for type 'tiles' mapped with name 'SUCCESS'.  Did you mean 'tiles'? - result - file:/C:/workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps/iSAS/WEB-INF/classes/struts.xml:17:40
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.buildResults(XmlConfigurationProvider.java:621)
    at com.opensymphony.xwork2.config.providers.XmlConfigurationProvider.addAction(XmlConfigurationProvider.java:365)
    ... 21 more

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>

    <constant name="struts.objectFactory" value="org.apache.struts2.spring.StrutsSpringObjectFactory" />
    <constant name="struts.ui.theme" value="simple" />
    <constant name="struts.devMode" value="true" />

    <package name="default" extends="struts-default">       
        <result-types>
            <result-type name="tiles" class="org.apache.struts2.views.tiles.TilesResult"/>
        </result-types>

        <action name="userRegistration" method="{1}" class="userRegistration">
            <result name="SUCCESS" type="tiles">isas.user.registration</result>
            <result name="ERROR" type="tiles">isas.errorPage</result>
            <result name="input" type="tiles">isas.user.registration</result>
        </action>

    </package>
</struts>

제발 친구를 도와주세요. 그 이유가 뭔지 모르겠습니다. 어쨌든 사전에 감사드립니다 ... !!!

해결법

  1. ==============================

    1."struts2-spring-plugin-2.1.6.jar"파일이 누락되었다고 생각합니다. 클래스 패스에서 확인하십시오.

    "struts2-spring-plugin-2.1.6.jar"파일이 누락되었다고 생각합니다. 클래스 패스에서 확인하십시오.

  2. ==============================

    2.그러나 나는 그 병이 나의 문제를 해결하지 않았다는 것을 덧붙여서 같은 오류를 가지고있다.

    그러나 나는 그 병이 나의 문제를 해결하지 않았다는 것을 덧붙여서 같은 오류를 가지고있다.

    오류 상태 : 구성을로드 할 수 없습니다. - action - file : / C : /workspace/.metadata/.plugins/org.eclipse.wst.server.core/tmp3/wtpwebapps/iSAS/WEB-INF/classes/struts.xml:16:73

    struts.xml 16 행에 문제가 있습니다.

    struts는 userRegistration 클래스에서 {1}이라는 메소드를로드하려고 시도합니다. 아마도 그 메소드는 유효하지 않은 자바 이름이므로 존재하지 않습니다. 스트럿츠 (struts)가 {1}과 같은 표기법을 클래스의 첫 번째 메소드 (아마도 그렇지 않음)를 받아들이는지 확실하지 않지만, 제 경우에는 문제였습니다. struts.xml의 액션 태그에서 이름의 철자가 틀린 메소드를 참조하기 때문에 struts는 존재하지 않는 메소드를 찾으려고 시도했기 때문에이 에러가 발생했기 때문에 구성을로드 할 수 없습니다.

  3. ==============================

    3.문제가 해결되었습니다. 희망 솔루션은 다른 사람에게 유용 할 것입니다.

    문제가 해결되었습니다. 희망 솔루션은 다른 사람에게 유용 할 것입니다.

    Eclipse를 사용할 때 WebContent - WEB-INF - classes - struts.xml 아래에 struts.xml 파일이 있어야합니다.

    내가 실수 한 것은 클래스 폴더에서 내 파일을 삭제하는 데 사용 된 깨끗한 프로젝트를 수행 한 때였으므로이 특정 파일이 있는지 확인해야합니다.

  4. from https://stackoverflow.com/questions/18738054/unable-to-load-configuration-in-struts by cc-by-sa and MIT license