できるだけ説明的になるようにします。
状況:strutsタグがjspで解決されていません。リンクとして解決する必要があるものを見ると、次のようになります。
<html:link page="/dto/initDTO.do"><b><i>Design To Order Control System ( DTOCS )</i></b></html:link>
これは、strutsタグが解決されていないと私に信じさせます。
このページのソースは次のとおりです。
<%@ include file="/common/taglibs.jsp" %>
そして、そのjspを見ると:
<%@ taglib uri="/WEB-INF/tlds/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/tlds/struts-logic.tld" prefix="logic" %>
<%@ taglib uri='/WEB-INF/tlds/struts-template.tld' prefix='template' %>
<%@ taglib uri='/WEB-INF/tlds/struts-html.tld' prefix='html' %>
<%@ taglib uri="/WEB-INF/tlds/cat-input.tld" prefix="input" %>
<% String URLRoot = request.getContextPath(); %>
web.xmlを見ると:
<taglib>
<taglib-uri>/WEB-INF/tlds/struts-bean.tld</taglib-uri>
<taglib-location>/WEB-INF/tlds/struts-bean.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tlds/struts-html.tld</taglib-uri>
<taglib-location>/WEB-INF/tlds/struts-html.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tlds/struts-logic.tld</taglib-uri>
<taglib-location>/WEB-INF/tlds/struts-logic.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/tlds/struts-template.tld</taglib-uri>
<taglib-location>/WEB-INF/tlds/struts-template.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>/WEB-INF/webTrends.tld</taglib-uri>
<taglib-location>/WEB-INF/webTrends.tld</taglib-location>
</taglib>
</jsp-config>
フォルダ構造を再貼り付けせずに..tldsのパスは正しいです。クラスローダーをチェックし、strutsjarがロードされたこともわかります。
現在、これは、IBMRADによって起動されたローカルWebsphere6サーバーで実行されています。このプロジェクトをチェックアウトすると、ローカルでリンクが解決されません。しかし、私のチームメイトがそれをチェックアウトするとき、それは彼のローカルで実行されます。チームメイトと同じ手順でこのアプリをローカルで実行していることを確認しました。このアプリは、Websphere TEST、QA、およびPROD環境でも実行されます。したがって、この状況は私のボックスにのみ固有のものです。