Hi Guys,
I have a glassfish 3.1 env, where I deployed syncope core 1.1.2-SNAPHOT,
created from a maven project this morning.
If I deploy the syncope console and load a DB created from mysqldump DB
I can keep, reuse and initialize env from a fixed
point.
[1] However, my goal is not to depend on the console to
complete/initialise or setup my envs. I want to be able to do everything
from the CLI
which I do from the console.
Q 1): is point [1] feasible today?
Q 2): if yes, to Q 1) what and how would I perform the action(s)
- create role + special role schema attr+values
- link it to an already existing an functioning ldap resource
- propagate the role to ldap
Here is what I have attempted to do unsuccessfully using tomcat env
(which seems to function better for RESTful action than glassfish at
present)
test 1)
[nik@anvil ~]$ curl -u admin:password -X POST
http://localhost:9080/syncope/cxf/roles --data
"<role><name>bambi6</name><title>bambi6</title><attributes><attribute><readonly>false</readonly><schema>resourceEntitlement</schema><value>scan</value></attribute></attributes><resources><resource>uforge_ldap</resource></resources></role>"
-H "Accept: application/xml" -H "Content-type: application/xml" -D
/tmp/headers
[nik@anvil ~]$
14:52:44.396 ERROR
org.apache.syncope.core.rest.data.AbstractAttributableDataBinder -
Another role exists with the same name and the same parent role:
SyncopeRole[202]
14:52:44.602 ERROR
org.apache.syncope.core.rest.utils.RestServiceExceptionMapper -
Exception thrown by REST method: Exception during provision on resource
uforge_ldap
[LDAP: error code 49 - cannot bind the principalDn.]
org.apache.syncope.core.propagation.PropagationException: Exception
during provision on resource uforge_ldap
[LDAP: error code 49 - cannot bind the principalDn.]
at
org.apache.syncope.core.propagation.impl.PriorityPropagationTaskExecutor.execute(PriorityPropagationTaskExecutor.java:61)
~[PriorityPropagationTaskExecutor.class:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.7.0_19]
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
~[na:1.7.0_19]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.7.0_19]
at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_19]
at
org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.transaction.interceptor.TransactionInterceptor$1.proceedWithInvocation(TransactionInterceptor.java:96)
~[spring-tx-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:260)
~[spring-tx-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:94)
~[spring-tx-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at com.sun.proxy.$Proxy138.execute(Unknown Source) ~[na:na]
at
org.apache.syncope.core.rest.controller.RoleController.create(RoleController.java:284)
~[RoleController.class:na]
at
org.apache.syncope.core.rest.controller.RoleController$$FastClassByCGLIB$$77c6d55e.invoke(<generated>)
~[spring-core-3.2.2.RELEASE.jar:na]
at
org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:204)
~[spring-core-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.aop.framework.CglibAopProxy$CglibMethodInvocation.invokeJoinpoint(CglibAopProxy.java:698)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.security.access.intercept.aopalliance.MethodSecurityInterceptor.invoke(MethodSecurityInterceptor.java:64)
~[spring-security-core-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:631)
~[spring-aop-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.apache.syncope.core.rest.controller.RoleController$$EnhancerByCGLIB$$187e5e21.create(<generated>)
~[spring-core-3.2.2.RELEASE.jar:na]
at
org.apache.syncope.core.services.RoleServiceImpl.create(RoleServiceImpl.java:58)
~[RoleServiceImpl.class:na]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
~[na:1.7.0_19]
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
~[na:1.7.0_19]
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
~[na:1.7.0_19]
at java.lang.reflect.Method.invoke(Method.java:601) ~[na:1.7.0_19]
at
org.apache.cxf.service.invoker.AbstractInvoker.performInvocation(AbstractInvoker.java:180)
~[cxf-api-2.7.4.jar:2.7.4]
at
org.apache.cxf.service.invoker.AbstractInvoker.invoke(AbstractInvoker.java:96)
~[cxf-api-2.7.4.jar:2.7.4]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:194)
[cxf-rt-frontend-jaxrs-2.7.4.jar:2.7.4]
at org.apache.cxf.jaxrs.JAXRSInvoker.invoke(JAXRSInvoker.java:102)
[cxf-rt-frontend-jaxrs-2.7.4.jar:2.7.4]
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor$1.run(ServiceInvokerInterceptor.java:58)
[cxf-api-2.7.4.jar:2.7.4]
at
org.apache.cxf.interceptor.ServiceInvokerInterceptor.handleMessage(ServiceInvokerInterceptor.java:94)
[cxf-api-2.7.4.jar:2.7.4]
at
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:271)
[cxf-api-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.ChainInitiationObserver.onMessage(ChainInitiationObserver.java:121)
[cxf-api-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.http.AbstractHTTPDestination.invoke(AbstractHTTPDestination.java:239)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.servlet.ServletController.invokeDestination(ServletController.java:223)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:203)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.servlet.ServletController.invoke(ServletController.java:137)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.servlet.CXFNonSpringServlet.invoke(CXFNonSpringServlet.java:158)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.handleRequest(AbstractHTTPServlet.java:243)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.doPost(AbstractHTTPServlet.java:163)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
[servlet-api.jar:na]
at
org.apache.cxf.transport.servlet.AbstractHTTPServlet.service(AbstractHTTPServlet.java:219)
[cxf-rt-transports-http-2.7.4.jar:2.7.4]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)
[catalina.jar:7.0.39]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
[catalina.jar:7.0.39]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:54)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:201)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
[spring-security-web-3.1.4.RELEASE.jar:3.1.4.RELEASE]
at
org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
[spring-web-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
[spring-web-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
[catalina.jar:7.0.39]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
[catalina.jar:7.0.39]
at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:88)
[spring-web-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
[spring-web-3.2.2.RELEASE.jar:3.2.2.RELEASE]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)
[catalina.jar:7.0.39]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)
[catalina.jar:7.0.39]
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:222)
[catalina.jar:7.0.39]
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123)
[catalina.jar:7.0.39]
at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
[catalina.jar:7.0.39]
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
[catalina.jar:7.0.39]
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
[catalina.jar:7.0.39]
at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:947) [catalina.jar:7.0.39]
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
[catalina.jar:7.0.39]
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
[catalina.jar:7.0.39]
at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1009)
[tomcat-coyote.jar:7.0.39]
at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
[tomcat-coyote.jar:7.0.39]
at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)
[tomcat-coyote.jar:7.0.39]
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
[na:1.7.0_19]
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
[na:1.7.0_19]
at java.lang.Thread.run(Thread.java:722) [na:1.7.0_19]
How do I pass the principal credentials to the curl POST? and Why should
I anyway - this is defined in the ldap connector anyway?
rgds,
Nik