Coder Social home page Coder Social logo

cubait / cuba-component-user-profile Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 2.0 202 KB

A CUBA framework component that lets an authenticated user change his/her details. It also offer a REST API to be consumed by third party applications, or by Polymer clients.

License: Apache License 2.0

Java 98.76% Shell 1.24%
cuba cuba-platform cuba-component addon user-profile

cuba-component-user-profile's People

Contributors

pfurini avatar

Watchers

 avatar  avatar

cuba-component-user-profile's Issues

Settings windows doesn't open

I just added this component in my project and then started the server.

The My Profile menu appears in the Help menu and on click of it the screen appears, I was eager to see the settings screen, but when i want to it throws an error as below.

java.lang.NullPointerException at com.haulmont.cuba.web.app.ui.core.settings.SettingsWindow.initDefaultScreenField(SettingsWindow.java:193) at com.haulmont.cuba.web.app.ui.core.settings.SettingsWindow.init(SettingsWindow.java:179) at it.nexbit.cuba.security.userprofile.web.screens.NexbitSettingsWindow.init(NexbitSettingsWindow.java:22) at com.haulmont.cuba.gui.WindowManager.init(WindowManager.java:1242) at com.haulmont.cuba.gui.WindowManager.initWrapperFrame(WindowManager.java:1231) at com.haulmont.cuba.gui.WindowManager.createWindow(WindowManager.java:581) at com.haulmont.cuba.gui.WindowManager.openWindow(WindowManager.java:750) at com.haulmont.cuba.web.WebWindowManager.openWindow(WebWindowManager.java:155) at com.haulmont.cuba.gui.config.MenuCommand$ScreenCommand.run(MenuCommand.java:181) at com.haulmont.cuba.gui.config.MenuCommand.execute(MenuCommand.java:76) at com.haulmont.cuba.web.sys.SideMenuBuilder.lambda$createMenuBarCommand$0(SideMenuBuilder.java:175) at com.haulmont.cuba.web.gui.components.mainwindow.WebSideMenu$MenuItemImpl.lambda$setCommand$0(WebSideMenu.java:467) at com.haulmont.cuba.web.toolkit.ui.CubaSideMenu$1.menuItemTriggered(CubaSideMenu.java:83) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:158) at com.vaadin.server.ServerRpcManager.applyInvocation(ServerRpcManager.java:119) at com.vaadin.server.communication.ServerRpcHandler.handleInvocation(ServerRpcHandler.java:444) at com.vaadin.server.communication.ServerRpcHandler.handleInvocations(ServerRpcHandler.java:409) at com.vaadin.server.communication.ServerRpcHandler.handleRpc(ServerRpcHandler.java:274) at com.vaadin.server.communication.UidlRequestHandler.synchronizedHandleRequest(UidlRequestHandler.java:90) at com.vaadin.server.SynchronizedRequestHandler.handleRequest(SynchronizedRequestHandler.java:41) at com.vaadin.server.VaadinService.handleRequest(VaadinService.java:1435) at com.vaadin.server.VaadinServlet.service(VaadinServlet.java:361) at com.haulmont.cuba.web.sys.CubaApplicationServlet.serviceAppRequest(CubaApplicationServlet.java:300) at com.haulmont.cuba.web.sys.CubaApplicationServlet.service(CubaApplicationServlet.java:191) at javax.servlet.http.HttpServlet.service(HttpServlet.java:742) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:107) at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:73) at com.haulmont.cuba.web.sys.CubaHttpFilter.doFilter(CubaHttpFilter.java:107) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:478) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:140) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81) at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:650) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342) at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:803) at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66) at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:868) at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1459) at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) at java.lang.Thread.run(Thread.java:748)

Failed to register the proxy for the extsec_UserProfileService

The remote proxy needed to invoke the extsec_UserProfileService from client tier to middleware is misconfigured (same bean id as another component of mine: forgot-password), and so the service cannot be invoked when the two components are used together.

Convert extsec_UserProfileService REST service to a custom OAuth controller

The service approach to manage profile data is against REST principles.

Remove the service, and instead introduce a custom REST controller with the following endpoints:

/userProfile - GET
the same as the getProfile service method

/userProfile - POST
the same as the updateProfile service method, but returning updated profile on success (resolve issue #2)

/userProfile/password - POST
change password of the current logged in user (resolve issue #1)
It will accept a JSON body with this format:

{
"password": "newpassword"
}

or an equivalent application/x-www-form-urlencoded body.
It will return an empty response with 204 code on success.

Add changePassword method to extsec_UserProfileService

A POST request on the changePassword method will change the logged in user's password.

It will accept a JSON body with this format:

{
"password": "newpassword"
}

It will return an empty response with 204 code on success.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.