Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.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
Java 创建注册页以在Liferay 6.1的用户表中创建用户帐户时出错?_Java_Jsp_Web_Liferay_Portlet - Fatal编程技术网

Java 创建注册页以在Liferay 6.1的用户表中创建用户帐户时出错?

Java 创建注册页以在Liferay 6.1的用户表中创建用户帐户时出错?,java,jsp,web,liferay,portlet,Java,Jsp,Web,Liferay,Portlet,在Liferay 6.1中创建注册portlet并将用户帐户存储在数据库中的默认user\uu表中时,我遇到了问题 我正在使用默认的Liferay类UserLocalServiceUtil及其方法UserLocalServiceUtil.addUser(creatorUserId、companyId、autoPassword、password1、password2、autoScreenName、屏幕名、电子邮件地址、facebookId、openId、区域设置、名字、中间名、姓氏、前缀XID、后

在Liferay 6.1中创建注册portlet并将用户帐户存储在数据库中的默认
user\uu
表中时,我遇到了问题

我正在使用默认的Liferay类
UserLocalServiceUtil
及其方法
UserLocalServiceUtil.addUser(creatorUserId、companyId、autoPassword、password1、password2、autoScreenName、屏幕名、电子邮件地址、facebookId、openId、区域设置、名字、中间名、姓氏、前缀XID、后缀XID、男性、生日月、生日日、生日年、职务头衔、组ID、组织ID、角色ID、用户组ID、发送电子邮件、服务上下文);

我面对这个错误:

java.lang.NullPointerException
    at com.liferay.portal.security.pwd.PwdToolkitUtil.validate(PwdToolkitUtil.java:40)
    at com.liferay.portal.service.impl.UserLocalServiceImpl.validate(UserLocalServiceImpl.java:5405)
    at com.liferay.portal.service.impl.UserLocalServiceImpl.addUserWithWorkflow(UserLocalServiceImpl.java:592)
    at com.liferay.portal.service.impl.UserLocalServiceImpl.addUser(UserLocalServiceImpl.java:463)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:112)
    at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:71)
    at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
    at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:59)
    at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
    at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:59)
    at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
    at com.liferay.portal.spring.aop.ServiceBeanAopProxy.invoke(ServiceBeanAopProxy.java:211)
    at $Proxy96.addUser(Unknown Source)
    at com.liferay.portal.service.UserLocalServiceUtil.addUser(UserLocalServiceUtil.java:445)
    at org.apache.jsp.register_jsp._jspService(register_jsp.java:123)
    at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:70)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:432)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:390)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:334)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:722)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:72)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilterChain.doFilter(InvokerFilterChain.java:113)
    at com.liferay.portal.kernel.servlet.filters.invoker.InvokerFilter.doFilter(InvokerFilter.java:70)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:684)
    at org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:593)
    at org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:530)
    at com.liferay.portlet.PortletRequestDispatcherImpl.dispatch(PortletRequestDispatcherImpl.java:316)
    at com.liferay.portlet.PortletRequestDispatcherImpl.include(PortletRequestDispatcherImpl.java:105)
    at com.liferay.util.bridges.mvc.MVCPortlet.include(MVCPortlet.java:366)
    at com.liferay.util.bridges.mvc.MVCPortlet.include(MVCPortlet.java:382)
    at com.liferay.util.bridges.mvc.MVCPortlet.doDispatch(MVCPortlet.java:315)
    at javax.portlet.GenericPortlet.render(GenericPortlet.java:233)
...

看起来您正试图从portlet的呈现状态直接从jsp调用此方法-您应该在呈现之前从操作状态调用此方法。在呈现期间,您不应该更改任何状态


阅读关于portlet生命周期的更多详细说明。简言之:如果您习惯于在Servlet中执行JSP中的所有操作,那么您必须重新学习portlet:action和render是整齐分开的状态。通常portlet呈现的频率要比实际处理动作的频率高很多(由于一个页面上可以有许多不同的Portlet,因此只有一个Portlet可以处理一个操作,而所有Portlet都可以显示/呈现。

您的password1或password2可能为null,并且autoPassword设置为true。Liferay尝试验证给定的密码,当比较null值时,会出现NullPointerException。

您还可以发布一些不正确的代码吗调用
addUser
方法?作为Olaf Kock,您是从
render
方法还是从JSP调用此代码?谢谢