cancel
Showing results for 
Search instead for 
Did you mean: 

Tag library descriptor cannot be found for uri

Former Member
0 Kudos

Hi

I am new to J2EE development .

But with few idea, i am making modification to an Existing J2EE Application.

I have a copied an Existing Application to my new Application and deployed the Application.

When tried acessing the Application via web (http://myServer:53500/myTest/start.jsp) , i am facing error such as like <b>WebIOException</b>.

When i had a deep look at the <b>Log File</b>, i found that the error is "<b>Tag library descriptor cannot be found for uri:</b>"

How do i solve this ???

Any Help will really appreciated !!!

Many Thanks

Jack

Accepted Solutions (0)

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi Jack,

I am also planning to do customisation to isauseradmin, but am wondering if you were sucessfuly able to change this application. Can you please let me know if there are any restrictions on changing this application?

Regards

Amit

former_member185706
Participant
0 Kudos

Hi Jack,

please give me more info about your application and what exactly your modified in the excisting one.

Can you post here the content of web.xml and the code of JSP file that you requested?

Regards

Bojidar

Former Member
0 Kudos

Hi

web.xml Code:

<?xml version="1.0" encoding="UTF-8"?>

<!--DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN"

"http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"-->

<!-- All descriptions of context parameters should be provided within description tags.

This assures that they are shown in the deployment tool -->

<web-app>

<context-param>

<param-name>

application.name

</param-name>

<param-value>

isauseradm

</param-value>

<description>

Name of the web application. This value must not be changed. It is used in XCM configuration files and for CCMS reporting.

</description>

</context-param>

<context-param>

<param-name>path.xcm.config.isa.sap.com</param-name>

<param-value>/WEB-INF/xcm/sap/system/bootstrap-config.xml</param-value>

<description>Turns the Extended Configuration Management on if a path to the configuration file is specified. It is a relative path, with context-root of web application as root</description>

</context-param>

<context-param>

<param-name>

adminconfig.core.isa.sap.com

</param-name>

<param-value>

xcmadmin, isacorecache, jcoinfo, logging, version</param-value>

<description>

Controls which features are available in the ISA Administration Area. If you want to prevent access to the Administration Area clear the content of this parameter. The available features for this application are: &apos;sat, xcmadmin, isacorecache, jcoinfo, logging, version, loggingfiledownload, appinfo&apos;

</description>

</context-param>

<servlet>

<servlet-name>monitoringservlet</servlet-name>

<servlet-class>com.sap.isa.core.MonitoringServlet</servlet-class>

<init-param>

<param-name>trackActivityCount</param-name>

<param-value>100</param-value>

<description>SessionTrace Setting: Number of Tracked Activities</description>

</init-param>

<load-on-startup>3</load-on-startup>

<!-- start after action Servlet -->

<run-as>

<role-name>ccms</role-name>

</run-as>

</servlet>

<!-- Action Servlet Configuration -->

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>com.sap.isa.core.ActionServlet</servlet-class>

<init-param>

<param-name>config</param-name>

<param-value>/webContent/WEB-INF/config.xml,/webContent/WEB-INF/xcmadmin-config.xml,/webContent/WEB-INF/cfg/ccms-config.xml</param-value>

</init-param>

<init-param>

<param-name>config/user</param-name>

<param-value>/webContent/WEB-INF/config_user.xml</param-value>

</init-param>

<init-param>

<param-name>initconfig</param-name>

<param-value>/webContent/WEB-INF/xcm/sap/system/init-config.xml</param-value>

</init-param>

<init-param>

<param-name>nocache</param-name>

<param-value>true</param-value>

</init-param>

<init-param>

<param-name>debug</param-name>

<param-value>0</param-value>

</init-param>

<init-param>

<param-name>detail</param-name>

<param-value>0</param-value>

</init-param>

<init-param>

<param-name>validate</param-name>

<param-value>true</param-value>

</init-param>

<load-on-startup>2</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>monitoringservlet</servlet-name>

<url-pattern>admin/monitoringservlet</url-pattern>

</servlet-mapping>

<!-- Action Servlet Mapping -->

<servlet-mapping>

<servlet-name>action</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>

<!-- session (inactive-)lifetime 30 min -->

<session-config>

<session-timeout>30</session-timeout>

</session-config>

<taglib>

<taglib-uri>/htmlb</taglib-uri>

<taglib-location>/webContent/WEB-INF/htmlb.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>/isa</taglib-uri>

<taglib-location>/webContent/WEB-INF/isa.tld</taglib-location>

</taglib>

<!-- ============ ISACORE start ============ -->

<taglib>

<taglib-uri>/isacore</taglib-uri>

<taglib-location>/webContent/WEB-INF/tlds/isacore.tld</taglib-location>

</taglib>

<!-- ============ ISACORE end ============ -->

<!-- security settings for administration area -->

<resource-ref>

<res-ref-name>SAP/CRM/isauseradm</res-ref-name>

<res-type>javax.sql.DataSource</res-type>

<res-auth>Application</res-auth>

</resource-ref>

<security-constraint>

<web-resource-collection>

<web-resource-name>admin</web-resource-name>

<url-pattern>/admin/*</url-pattern>

</web-resource-collection>

<auth-constraint>

<role-name>isaadmin</role-name>

</auth-constraint>

</security-constraint>

<login-config>

<auth-method>BASIC</auth-method>

<realm-name>isaadmin</realm-name>

</login-config>

<security-role>

<role-name>isaadmin</role-name>

</security-role>

<security-role>

<role-name>ccms</role-name>

</security-role>

</web-app>

***************************

I am planning to modify the ISAUSERADMIN application of SAP CRM application. So i have taken the total project from the J2EE server and changed only the Application name on Application.xml of the Enterprise Application Project.

Thanks

former_member185706
Participant
0 Kudos

I've asked for JSP code too?

Former Member
0 Kudos

I didnt modify anything on the JSP !!!

former_member185706
Participant
0 Kudos

Jack,

i'n not familiar with this application and don't know how in this jsp a tld is used. So could you paste here th ecode of the jsp pls?

So far i can see that in web.xml there are strange taglib-locations , starting with /webContent/WEB-INF. I think this is wrong , because it should be relative to the application root and in the WEB-INF directory, which should be in the root too, not in the subdirectory.

So give me the jsp code to process further

Regards

Bojidar

Former Member
0 Kudos

These codes are taken from the Start page of the application...

<%@ page import="java.util.Collections" %>

<%@ taglib uri="/htmlb" prefix="hbj" %>

<%@ taglib uri="/isa" prefix="isa" %>

....

<hbj:content id="myContext">

<hbj:page title="<%=applicationName%>">

<style>

.sapAppBrandTopLvl2

Thanks

former_member185706
Participant
0 Kudos

Jack,

the problem here is the wrong taglib location for htmlb and isa - i think it should be


<taglib-location>/WEB-INF/htmlb.tld</taglib-location>
<taglib-location>/WEB-INF/isa.tld</taglib-location>

And of course you can check the location of the files - where are they placed whithin the application root?

Regards

Bojidar

Former Member
0 Kudos

Bojidar

Even changing this does not help me !!!

Thanks

Former Member
0 Kudos

Hi

please check whether u have placed the tld files under the web-inf directory

hope this helps

regards

rajeshkr

Former Member
0 Kudos

Yes it is inside the WEB-INF dir

Former Member
0 Kudos

Hi

I would suggest you to do the follwing changes in web.xml

<taglib>

<taglib-uri>htmlb</taglib-uri>

<taglib-location>/WEB-INF/htmlb.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>isa</taglib-uri>

<taglib-location>/WEB-INF/isa.tld</taglib-location>

</taglib>

<!-- ============ ISACORE start ============ -->

<taglib>

<taglib-uri>isacore</taglib-uri>

<taglib-location>/WEB-INF/isacore.tld</taglib-location>

</taglib>

Also assuming that you have place all the three tld file s in the web-inf .

Do the following changes in the jsp

<%@ taglib uri="htmlb" prefix="hbj" %>

<%@ taglib uri="isa" prefix="isa" %>

Also would be better if you check the <shortname> tag in each of the tld has the same name as the prefix name ex: <shortname>hbj</shortname>

also similarly check the <uri> tag also if defined has the same uri name defined in web.xml

hope this helps

regards

rajeshkr

former_member185706
Participant
0 Kudos

Jack,

did you redeploy the aplication after applying chages suggested by me?

Regards

Bojidar