2014-01-24 5 views
2

Struts.i를 처음 사용하는 경우 샘플을 사용해 보았습니다. http://struts.apache.org/tags-html은 web.xml에 또는이 응용 프로그램과 함께 배포 된 jar 파일 중 하나에서 해결 될 수없는 "내 JSP 페이지가있다 '<% : application.when 내가 그것을 실행 struts1.x, 에러를오류 "절대 URI :이 응용 프로그램과 함께 배포 된 jar 파일 또는 web.xml에서 http://struts.apache.org/tags-html을 확인할 수 없음"

절대 URI를 제공합니다 @taglib uri = "http://struts.apache.org/tags-html"prefix = "html"%> < % @ taglib uri = "http://struts.apache.org/tags-bean"prefix = "콩"%> '

웹 페이지 :

<html> 
    <body> 
    <center> 
     <html:errors/> 
     <html:form action="login"> 
     <bean:message key="label.uname"/> 
     : 
     <html:text property="uname"/> 
     <br> 
     <bean:message key="label.pwd"/> 
     : 
     <html:text property="pwd"/> 
     <br> 
     <html:submit value="LOGIN"/> 
     </html:form> 
    </center> 
    </body> 
</html> 

의 web.xml :

<web-app> 
    <servlet> 
    <servlet-name>Action</servlet-name> 
    <servlet-class>org.apache.struts.Action.ActionServlet</servlet-class> 
    <init-param> 
     <param-name>Config</param-name> 
     <param-value>/WEB-INF/struts-config.xml</param-value> 
    </init-param> 
    <load-on-startup>1</load-on-startup> 
    </servlet> 
    <servlet-mapping> 
    <servlet-name>Action</servlet-name> 
    <url-pattern>*.do</url-pattern> 
    </servlet-mapping> 
</web-app> 

답변

1

가 포함 봅니다 아래 jar 의존성과 같은 JSP 페이지에서

struts-taglib.jar [any version, eg: struts-taglib-1.3.10.jar] 

[WEB-INF/lib에서] :

<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> 
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> 
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> 

이 작동하는 방법 : 태그 라이브러리 디스크립터 [TLD] 정보는 당신이 언급 한 대답을 살펴 가질 수

"-taglib.jar 스트럿 \ META-INF \의 TLD"는 내부에 정의되어 있습니다 이 게시물에. 난 당신이 의존성으로 jar 파일이 있거나 WEB-INF 내부의 태그 라이브러리 디스크립터를 추가하고, web.xml

의 web.xml에서 구성 할 수있는 그래서 중 하나가 실행중인 예를 No getter method for property... error

<taglib> 
    <taglib-uri> 
     http://struts.apache.org/tags-bean 
    </taglib-uri> 
    <taglib-location> 
     /WEB-INF/struts-bean.tld 
    </taglib-location> 
</taglib> 
<taglib> 
    <taglib-uri> 
     http://struts.apache.org/tags-html 
    </taglib-uri> 
    <taglib-location> 
     /WEB-INF/struts-html.tld 
    </taglib-location> 
</taglib> 
<taglib> 
    <taglib-uri> 
     http://struts.apache.org/tags-logic 
    </taglib-uri> 
    <taglib-location> 
     /WEB-INF/struts-logic.tld 
    </taglib-location> 
</taglib> 

여기에서 구성한 것과 jsp 페이지에서 정의한 taglib 사이에는 매핑이 있습니다. JSP 페이지의 @taglib uri은 단순히 당신이 프로젝트를 만드는 동안 이 Struts의 TLD를 추가 옵션을 확인해야

<%@ taglib uri="http://struts.apache.org/tags-bean" prefix="bean" %> 
<%@ taglib uri="http://struts.apache.org/tags-html" prefix="html" %> 
<%@ taglib uri="http://struts.apache.org/tags-logic" prefix="logic" %> 
1

web.xml에 정의 <taglib-uri>과 일치해야합니다. 아래 스크린 샷과 같습니다. Add Struts TLDs

스트럿츠 TLD를 추가 : 당신은 스트럿츠 태그 라이브러리에 대한 태그 라이브러리 디스크립터를 생성 할 수 있습니다. 태그 라이브러리 디스크립터는 전체 태그 라이브러리와 각 개별 태그에 대한 추가 정보가 포함 된 XML 문서입니다. 일반적으로 로컬 TLD 파일이 아닌 온라인 URI를 참조 할 수 있기 때문에 이는 필수 사항은 아닙니다.