Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/jsf/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jsf 我有javax.faces.el.EvaluationException:java.lang.NullPointerException_Jsf_Jsf 2 - Fatal编程技术网

Jsf 我有javax.faces.el.EvaluationException:java.lang.NullPointerException

Jsf 我有javax.faces.el.EvaluationException:java.lang.NullPointerException,jsf,jsf-2,Jsf,Jsf 2,我在eclipse ide中使用jsf2.0和tomcat7。我刚刚做了一个图像裁剪,当我裁剪图像并提交表单时,我的代码中有一个错误。我不知道我在哪里 我的查看页面是: <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html" xmlns:f="http://java.sun.com/jsf/cor

我在eclipse ide中使用jsf2.0和tomcat7。我刚刚做了一个图像裁剪,当我裁剪图像并提交表单时,我的代码中有一个错误。我不知道我在哪里

我的查看页面是:

<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.prime.com.tr/ui">
<h:head>
<script src="jquery-1.4.2.js"></script>
<script src="jquery.Jcrop.js"></script>
<script src="jquery.min.js"></script>
<script src="jquery.Jcrop.min.js"></script>

</h:head>
<h:body>
<h:form>  
<h:panelGrid columns="2">  
    <p:imageCropper  value="#{imageCropperBean.croppedImage}"  
                image="/detroit-nights.jpg"                     />  
     <p:graphicImage id="localCroppedImage"  
                value="#{imageCropperBean.newFileName}.jpg" />  

</h:panelGrid>  

<p:commandButton value="Crop"  
      update="localCroppedImage"  action="#{imageCrop.crop}"  
            />  


</h:form>  
</h:body>
</html>
web.xml是:

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"  xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee /web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd" version="3.0">
<context-param>
<description>Context param for JSTL 1.2 to work in Tomcat 6 sun RI
</description>
<param-name>com.sun.faces.expressionFactory</param-name>
<param-value>com.sun.el.ExpressionFactoryImpl</param-value>
</context-param>
<context-param>
<description>Parameter required by Mojarra 2.0</description>
<param-name>com.sun.faces.allowTextChildren</param-name>
<param-value>true</param-value>
</context-param>
<context-param>
<param-name>javax.faces.VALIDATE_EMPTY_FIELDS</param-name>
<param-value>true</param-value>
</context-param>
<servlet>
<servlet-name>Resource Servlet</servlet-name>
<servlet-class>
    org.primefaces.resource.ResourceServlet
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Resource Servlet</servlet-name>
<url-pattern>/primefaces_resource/*</url-pattern>
</servlet-mapping>
<context-param>
<param-name>javax.faces.PROJECT_STAGE</param-name>
<param-value>Development</param-value>
</context-param>
<context-param>
<param-name>javax.faces.STATE_SAVING_METHOD</param-name>
<param-value>server</param-value>
</context-param>
<filter>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<filter-class>org.primefaces.webapp.filter.FileUploadFilter</filter-class>
<init-param>
  <param-name>thresholdSize</param-name>
  <param-value>2097152</param-value>
</init-param>
<init-param>
  <param-name>uploadDirectory</param-name>
  <param-value>/temp</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>PrimeFaces FileUpload Filter</filter-name>
<servlet-name>Faces Servlet</servlet-name>
</filter-mapping>
<servlet>
<servlet-name>Faces Servlet</servlet-name>
<servlet-class>javax.faces.webapp.FacesServlet</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>/faces/*</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.xhtml</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>Faces Servlet</servlet-name>
<url-pattern>*.jsf</url-pattern>
</servlet-mapping>
<session-config>
<session-timeout>30</session-timeout>
</session-config>
<welcome-file-list>
<welcome-file>image.xhtml</welcome-file>
</welcome-file-list>

</web-app>

JSTL 1.2在Tomcat6 sun RI中工作的上下文参数
com.sun.faces.expressionFactory
com.sun.el.ExpressionFactoryImpl
Mojarra 2.0所需的参数
com.sun.faces.allowTextChildren
真的
javax.faces.VALIDATE_空_字段
真的
资源Servlet
org.primefaces.resource.ResourceServlet
资源Servlet
/素数资源/*
javax.faces.PROJECT_阶段
发展
javax.faces.STATE_保存方法
服务器
PrimeFaces文件上载筛选器
org.primefaces.webapp.filter.FileUploadFilter
阈值大小
2097152
上传目录
/临时工
PrimeFaces文件上载筛选器
Facesservlet
Facesservlet
javax.faces.webapp.FacesServlet
1.
Facesservlet
/面孔/*
Facesservlet
*.xhtml
Facesservlet
*.jsf
30
image.xhtml

您对托管bean的引用是错误的。使用
@ManagedBean
注释的
name
属性中写入的
name

因此,请替换:

<p:imageCropper  value="#{imageCropperBean.croppedImage}"  
                image="/detroit-nights.jpg"                     />  
<p:graphicImage id="localCroppedImage"  
                value="#{imageCropperBean.newFileName}.jpg" /> 



(您对
p:commandButton
)的操作是正确的。

您好,我已按您的想法更改为,但裁剪图像未显示为matt@Muthu。不幸的是,我没有使用primefaces的ImageCropper模块的具体经验。我建议使用Firebug或Chrome开发工具来检查客户端错误(例如,404用于映像)或检查服务器日志以查看这方面的任何错误。
<p:imageCropper  value="#{imageCropperBean.croppedImage}"  
                image="/detroit-nights.jpg"                     />  
<p:graphicImage id="localCroppedImage"  
                value="#{imageCropperBean.newFileName}.jpg" /> 
<p:imageCropper  value="#{imageCrop.croppedImage}"  
                image="/detroit-nights.jpg"                     />  
<p:graphicImage id="localCroppedImage"  
                value="#{imageCrop.newFileName}.jpg" />