2014-02-26 2 views
0

Eclipse Kepler와 함께 GlassFish 4를 사용하고 있습니다.Java EE 프로젝트에 PrimeFaces 4 추가

JSF 프로젝트에 PrimeFaces를 추가하고 싶습니다만 가져올 수 없습니다. 나는 PrimeFaces 4 개 단지를 수입 및 재배치 (내 강사에 의해 공급되는 ANT 빌드를 사용하여) 다시 나를 당황

Warning: This page calls for XML namespace http://primefaces.org/ui declared with prefix p but no taglibrary exists for that namespace

:이 오류가 계속. 여기에

<project name="JavaEE Build" default="BuildAll"> 

<!-- This needs to be changed before you build your code --> 
<property name="glassfish_libs" value="C:\glassfish4\glassfish\modules"/> 

<property name="bin" value="./bin"/> 
<property name="lib" value="./lib"/> 
<property name="src" value="./src"/> 
<property name="dist" value="./dist"/> 
<property name="jarfile" value="${dist}/ejb.jar"/> 
<property name="warfile" value="${dist}/webapp.war"/> 
<property name="html" value="./WebContent"/> 

<path id="my.classpath"> 
    <pathelement path="${java.class.path}"/> 
    <pathelement location="${bin}"/> 

    <fileset dir="${lib}"> 
     <include name="*.jar"/> 
    </fileset> 

    <fileset dir="${glassfish_libs}"> 
     <include name="**/javax*.jar"/> 
     <include name="jsf-api.jar"/> 
     <include name="security.jar"/> 
    </fileset> 
</path> 

<target name="BuildAll" 
     depends="clean, prep, compile, jar, war" 
     description="Complete rebuild."> 
    <echo message="Build complete."/> 
</target> 

<target name="classpath"> 
     <property name="current.classpath" refid="my.classpath"/> 

     <echo level="info"> 
     Classpath is : 
      ${current.classpath} 
     </echo> 
</target> 

<target name="clean"> 
    <delete dir="${bin}"/> 
    <delete dir="${dist}"/> 
    <delete> 
     <fileset dir="."> 
      <include name="TEST*.xml"/> 
     </fileset> 
    </delete> 
</target> 

<target name="prep">   
    <mkdir dir="${bin}"/> 
    <mkdir dir="${dist}"/>   
</target> 

<target name="compile" 
description="Compile all Java classes" 
    depends="prep"> 

    <javac srcdir="${src}" destdir="${bin}" debug="true" encoding="ISO-8859-1"> 
     <classpath refid="my.classpath"/> 
    </javac> 

    <echo message="Compiled."/> 
</target> 

<target name="jar" depends="compile" 
         description="Build EJB Jar files."> 
    <delete file="${jarfile}"/> 

    <jar destfile="${jarfile}" basedir="${bin}"> 

     <metainf dir="${src}/META-INF"> 
      <include name="persistence.xml"/> 
     </metainf> 


    </jar> 
</target> 

<target name="war" depends="compile" 
         description="Build WAR file."> 
    <copy todir="${bin}"> 
     <fileset dir="${src}"> 
      <include name="**/persistence.xml"/> 
     </fileset> 
    </copy> 
    <delete file="${warfile}"/> 
    <war destfile="${warfile}" webxml="web.xml"> 
     <classes dir="${bin}"> 
     </classes> 

     <lib dir="${lib}"/> 
     <fileset dir="${html}"/> <!-- html files --> 
     <!-- The following block is commented out, until 
      the chapter on security. Please leave it until then! --> 
     <!-- 
     <webinf dir="${src}/META-INF"> 
     <include name="sun-ejb-jar.xml"/>    
     </webinf> 
     --> 
    </war> 
</target> 

<target name="ear" depends="war, jar" description="The full ear file"> 
    <ear destfile="${dist}/fullapplication.ear" appxml="application.xml"> 
    <fileset dir="${dist}" includes="*.jar,*.war"/> 
    </ear> 
</target> 

간단한 Facelet입니다 - - 여기

내 Ant 빌드입니다이 entry.xhtml
<html xmlns="http://www.w3.org/1999/xhtml" 
    xmlns:f="http://java.sun.com/jsf/core"  
    xmlns:h="http://java.sun.com/jsf/html" 
    xmlns:p="http://primefaces.prime.com.tr/ui"> 

    <h:body> 
     <p:spinner></p:spinner> 
    </h:body>     

나는 primefaces-4.0.jar를 수입라고 primeface-4.0-sources.jar 프로젝트를 마우스 오른쪽 버튼으로 클릭 -> 빌드 경로 -> 빌드 경로 구성 -> 외부 jar 추가

누군가가 사랑 스러울 수 있다면

답변

0

taglib의 정의는 아주 이상합니다. 나는 primefaces 4.0을 사용하고 PF 태그 라이브러리에 대한 경로는 이것이다 :

<html ... 
    xmlns:p="http://primefaces.org/ui"> 

사용하는 네임 스페이스가 Primefaces에 있던 2

이 도움이되지 않는 경우 primefaces 라이브러리에 정말 있는지 확인 당신이 전개하고있는 전쟁.

+0

이것은 primefaces 2.2를 사용했기 때문에 그 중 하나가 필요했습니다. pf 4로 시도해 보았습니다. – user2792920

관련 문제