OK, I'm stumped. Can anybody tell me why I'm getting:
javax.servlet.ServletException: Cannot find bean org.apache.struts.taglib.html.BEAN
in any scope
when I try to reference the Struts HTML TagLib in a new module I've created?
I've got a Struts application with a couple of modules, and I'm using the HTML taglibs
in other modules of the same application without a problem. I've just created a new
module, and it's barfing with this error. Here's my configuration:
web.xml has this:
...
<taglib>
<taglib-uri>/tags/struts-html</taglib-uri>
<taglib-location>/WEB-INF/struts-html.tld</taglib-location>
</taglib>
...
My problem JSP starts with this:
<%@ taglib uri="/WEB-INF/struts-html.tld" prefix="html" %>
<%@ taglib uri="/WEB-INF/ldap.tld" prefix="ldap" %>
I've tried this but it makes no difference:
<%@ taglib uri="/tags/struts-html" prefix="html" %>
<%@ taglib uri="/WEB-INF/ldap.tld" prefix="ldap" %>
The taglib config file struts-html.tld is in WEB-INF. As I mentioned, this is
identical to code in other modules/JSPs.
One difference may be that I'm trying to have a 'one-page' module. That is it starts
with index.do, which display the index.jsp page which contains a form that submits to
the same spot. My intent to to have a database search page that shows the search form
at the top of it and, if a search has been submitted also shows the results below it.
Pretty simple to do as a JSP, but maybe this isn't something that can be done with one
page in Struts?
My module config file is this:
<struts-config>
<form-beans>
<form-bean name="DirectoryActionForm" type="fpd.DirectoryActionForm" />
</form-beans>
<action-mappings>
<action name="DirectoryActionForm" parameter="/jsp/pages/directory/index.jsp"
path="/index" type="fpd.DirectoryAction">
<forward name="forward" path="/jsp/pages/directory/index.jsp"
contextRelative="true"/>
</action>
</action-mappings>
</struts-config>
Any help would be appreciated.
Dave