2016-07-25 5 views
0
PersonServiceImpl personService = new PersonServiceImpl(); 
      PropertyMap ppOne = new PropertyMap(6); 
      AuthenticationService authenticationService = new AuthenticationServiceImpl(); 
      AuthorityService aService = new AuthorityServiceImpl(); 
      if(authenticationService.authenticationExists("admin123")==false){ 
       authenticationService.authenticate("admin123","admin123".toCharArray()); 
      ppOne.put(ContentModel.PROP_USER_USERNAME,"admin123"); 
       ppOne.put(ContentModel.PROP_FIRSTNAME,"admin123"); 
       ppOne.put(ContentModel.PROP_LASTNAME,"Technologies"); 
       ppOne.put(ContentModel.PROP_EMAIL,"[email protected]"); 
       ppOne.put(ContentModel.PROP_PASSWORD,"admin123"); 
       NodeRef nodeRef=personService.createPerson(ppOne); 
      } 

...ユーザーの作成者が新たな人物である場合、私は、このようなコードを保つこれまで、その後も真authenticationExits

私は偽その後、persionService.createPerson(ppOne)の真のインプレースを続ける場合は意志...

はどれ体が私を助けてください... nullポインタ例外を発生させ

Jul 26, 2016 9:36:07 AM org.apache.catalina.core.StandardWrapperValve invoke 
SEVERE: Servlet.service() for servlet [testing] in context with path [/SpringWithAlfrescoScreens] threw exception [Request processing failed; nested exception is java.lang.NullPointerException] with root cause 
java.lang.NullPointerException 
    at org.alfresco.repo.security.authentication.AuthenticationServiceImpl.clearCurrentSecurityContext(AuthenticationServiceImpl.java:188) 
    at org.alfresco.repo.security.authentication.AuthenticationServiceImpl.authenticate(AuthenticationServiceImpl.java:66) 
    at com.service.AlfService.saveApplication(AlfService.java:135) 
    at com.controller.AlfController.saveApplication(AlfController.java:144) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:221) 
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137) 
    at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110) 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:777) 
    at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:706) 
    at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85) 
    at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:943) 
    at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:877) 
    at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:966) 
    at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:857) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:621) 
    at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:842) 
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) 
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
    at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) 
    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.StandardWrapperValve.invoke(StandardWrapperValve.java:222) 
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) 
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171) 
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:100) 
    at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:953) 
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408) 
    at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1041) 
    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:603) 
    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) 
    at java.lang.Thread.run(Thread.java:745) 
+1

あなたは私たちにスタックトレースを表示していただけますか? – Akah

答えて

1

"new"を使用してオブジェクトを作成する代わりに、@ PersonService、AuthenticationServiceだけを送信できますか?続き

は、作業コードスニペットです:

@Autowired 
PersonService personService; 
@Autowired 
MutableAuthenticationService authenticationService; 



public void createUser(User user) throws Exception { 
    if (user.getUserName() != null) { 
     if (authenticationService.authenticationExists(user.getUserName())) { 
      throw new Exception("User" + user.getUserName() + " already exists."); 
     } else { 
      authenticationService.createAuthentication(user.getUserName(), user.getPassword().toCharArray()); 
      Map<QName, Serializable> properties = new HashMap<>(); 
      properties.put(ContentModel.PROP_USERNAME, user.getUserName()); 
      NodeRef personNodeRef = personService.createPerson(properties); 
      user.setId(personNodeRef.getId()); 
     } 
    } 
} 
1

これは単にコピー/ペーストを作る私https://forums.alfresco.com/comment/146735#comment-146735のためにうまく働いてみてくださいとrに忘れないでくださいすべての投稿が返信されます

+0

コード内で少し変更を加えなければならないので、 –

+0

フィードバックはありますか?うまくいかない –

関連する問題