I am declaring the jsp namespace in my xhtml faces pages using xmlns:jsp=”http://java.sun.com/jsp/page”
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:c="http://java.sun.com/jsp/jstl/core"
xmlns:fn="http://java.sun.com/jsp/jstl/functions"
xmlns:jsp="http://java.sun.com/jsp/page"
xml:lang="en" lang="en">
However the jsp:include directive is not being processed, just rendered. My IDE (Netbeans) tells me that it cannot find the library for this namespace. I am using maven with the following pom.xml file. I have another application deployed into the same container, which uses a similar structure, but is not using maven. I can’t for the live of me figure out what library I need to include to get any of the jsp:directives working.
http://maven.apache.org/xsd/maven-4.0.0.xsd”>
4.0.0
<groupId>com.j2anywhere.demo</groupId>
<artifactId>JSFDebug</artifactId>
<packaging>war</packaging>
<version>1.0-SNAPSHOT</version>
<name>JSFDebug</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.glassfish</groupId>
<artifactId>javax.faces</artifactId>
<version>2.1.7</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl-api</artifactId>
<version>1.2</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>jstl-impl</artifactId>
<version>1.2</version>
<scope>runtime</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>2.0.2</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
<properties>
<netbeans.hint.deploy.server>Tomcat</netbeans.hint.deploy.server>
</properties>
Thanks in advance
You’re using Facelets, which is basically the successor of JSP. It are two entirely distinct view technologies. The one is XML based and the other is Servlet based. You can’t use JSP tags in Facelets, nor can you use Facelets tags in JSP.
You need to use Facelets’ own
<ui:include>instead.Forget about JSP at all when developing with Facelets.
See also: