絶対URI:http://struts.apache.org/tags-beanは、このアプリケーションでデプロイされたweb.xmlまたはjarファイルでは解決できません.

絶対URI:http://struts.apache.org/tags-beanは、web.xmlまたはこのアプリケーションでデプロイされたjarファイルのいずれでも解決できません。

問題

StrutsタグライブラリJSPファイルへのアクセス中に一般的なエラーメッセージをStruts。


org.apache.jasper.JasperException: The absolute uri:
http://struts.apache.org/tags-bean

org.apache.jasper.JasperException: The absolute uri:
http://struts.apache.org/tags-html

org.apache.jasper.JasperException: The absolute uri:
http://struts.apache.org/tags-logic

org.apache.jasper.JasperException: The absolute uri:
http://struts.apache.org/tags-tiles

cannot be resolved in either web.xml or
the jar files deployed with this application

溶液

これは、Struts Tag Librariesプロパティを設定していないため、プロジェクトの依存関係にtldファイルが見つからないためです。

1. Strutタグライブラリの手動構成

Strutsタグライブラリを手動で構成する場合は、Struts version ⇐ 1.1 and Servlet < 2.3 containerで使用されます。 次の「tld」ファイルがWEB-INFフォルダーにコピーされていることを確認してください。これらのファイルはStrutsライブラリフォルダーにあります。

  • struts-bean.tld

  • struts-html.tld

  • struts-logic.tld

  • struts-tiles.tld

そしてそれをweb.xml
web.xmlで適切に定義します

...

     
      http://struts.apache.org/tags-bean
     
     
      /WEB-INF/struts-bean.tld
     

...

2. Strutタグライブラリの自動構成

Strutsタグライブラリを自動的に構成する場合は、Servlet version 2.3/2.4 and Struts 1.2 or 1.3フレームワークで使用されます。 struts-taglib.jar/WEB-INF/libディレクトリにあることを確認してください。

3. Eclipse IDEデバッグセッション

Eclipse IDEのデバッグセッション中にこれが発生した場合は、プロジェクトの依存関係が正しいフォルダーに展開されていることを確認してください。 this article for the solutionを確認してください。

結論

問題の原因はプロジェクトによって異なる場合がありますが、解決策は常に同じです

  • tldファイルがWEB-INF(古いStrutsスタイル)で利用可能であることを確認してください。

  • taglib uriにタイプミスがないことを確認してください。

  • struts-taglib.jar/WEB-INF/libまたはプロジェクトの依存関係(新しいStrutsスタイル)で使用可能であることを確認してください。