Willkommen, Gast
Home › Foren › Nuclos Entwicklung › Makros und Regeln › Aktueller Benutzer mit Groovy
Hallo!
Wie bekomme ich mit Groovy den aktuellen Benutzer heraus?
Ich will damit Felder dynamisch aktiv/inaktiv setzen.
Gruß
Hugo
Hallo Hugo,
dafür braucht man eine Bibliotheksregel:
public class Benutzer{
private final static RuleInterfaceFacadeBean server = SpringApplicationContextHolder.getBean(RuleInterfaceFacadeBean.class);
@Function(„org.nuclet.rules.GetBenutzer“)
public String getCurrentUser(){
String benutzer = (String)server.getCurrentUserName();
return benutzer;
}
}
und im Groovy kann man dann in etwa so:
return context.“#FUNCTION{org.nuclet.rules.GetBenutzer}“
auf den Benutzer zugreifen.
Beschrieben wäre dies nochmal unter
http://wiki.nuclos.de/pages/viewpage.action?pageId=327846
Danke
Inga
danke für das snippet, allerdings findet mein Groovy Script scheinbar die Funktion nicht
Bibliothekregelpackage org.nuclet.rule;
import org.nuclos.common.*;
import org.nuclos.server.ruleengine.ejb3.*;
import org.nuclos.api.annotation.Function;
import org.springframework.stereotype.Component;
@Component
public class Benutzer{
private final static RuleInterfaceFacadeBean server = SpringApplicationContextHolder.getBean(RuleInterfaceFacadeBean.class);
@Function("org.nuclet.rules.geBenutzer")
public String getCurrentUser(){
return server.getCurrentUserName();
}
}
Groovy Codedef user = context."#FUNCTION{org.nuclet.rules.GetBenutzer}";
log.info(user)
Fehler2013-05-14 11:16:14,648 ERROR [org.nuclos.client.scripting.ScriptEvaluator] javax.script.ScriptException: org.nuclos.common.NuclosFatalException: Unknown function:org.nuclet.rules.GetBenutzer
org.nuclos.common.NuclosFatalException: Unknown function:org.nuclet.rules.GetBenutzer
at org.nuclos.server.customcode.CustomCodeManager.invokeFunction(CustomCodeManager.java:344)
at org.nuclos.server.customcode.ejb3.CodeFacadeBean.invokeFunction(CodeFacadeBean.java:187)
at sun.reflect.GeneratedMethodAccessor3316.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.remoting.support.RemoteInvocationTraceInterceptor.invoke(RemoteInvocationTraceInterceptor.java:77)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy92.invokeFunction(Unknown Source)
at sun.reflect.GeneratedMethodAccessor3315.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.remoting.support.RemoteInvocation.invoke(RemoteInvocation.java:205)
at org.nuclos.server.common.NuclosRemoteInvocationExecutor.invoke(NuclosRemoteInvocationExecutor.java:162)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invoke(RemoteInvocationBasedExporter.java:78)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invokeAndCreateResult(RemoteInvocationBasedExporter.java:114)
at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.handleRequest(HttpInvokerServiceExporter.java:73)
at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:920)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:827)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:801)
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.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:150)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:201)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
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.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
at org.springframework.remoting.support.RemoteInvocationUtils.fillInClientStackTraceIfPossible(RemoteInvocationUtils.java:45)
at org.springframework.remoting.support.RemoteInvocationResult.recreate(RemoteInvocationResult.java:115)
at org.springframework.remoting.support.RemoteInvocationBasedAccessor.recreateRemoteInvocationResult(RemoteInvocationBasedAccessor.java:85)
at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:148)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy49.invokeFunction(Unknown Source)
at org.nuclos.client.customcode.CodeDelegate.invokeFunction(CodeDelegate.java:83)
at org.nuclos.client.scripting.context.AbstractScriptContext.methodMissing(AbstractScriptContext.java:54)
at org.nuclos.client.scripting.context.AbstractScriptContext.propertyMissing(AbstractScriptContext.java:41)
at sun.reflect.GeneratedMethodAccessor163.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaClassImpl.invokeMissingProperty(MetaClassImpl.java:745)
at groovy.lang.MetaClassImpl$12.getProperty(MetaClassImpl.java:1754)
at org.codehaus.groovy.runtime.callsite.GetEffectivePojoPropertySite.getProperty(GetEffectivePojoPropertySite.java:61)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:227)
at Script4.run(Script4.groovy:1)
at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:320)
at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:116)
at javax.script.AbstractScriptEngine.eval(Unknown Source)
at org.nuclos.client.scripting.ScriptEvaluator.eval(ScriptEvaluator.java:54)
at org.nuclos.client.ui.collect.component.AbstractCollectableComponent.setComponentState(AbstractCollectableComponent.java:2214)
at org.nuclos.client.genericobject.GenericObjectCollectController$47.run(GenericObjectCollectController.java:2607)
at org.nuclos.client.ui.UIUtils.invokeOnDispatchThread(UIUtils.java:1278)
at org.nuclos.client.genericobject.GenericObjectCollectController.unsafeFillDetailsPanel(GenericObjectCollectController.java:2601)
at org.nuclos.client.genericobject.GenericObjectCollectController.unsafeFillDetailsPanel(GenericObjectCollectController.java:2481)
at org.nuclos.client.genericobject.GenericObjectCollectController.unsafeFillDetailsPanel(GenericObjectCollectController.java:1)
at org.nuclos.client.ui.collect.CollectController.safeFillDetailsPanel(CollectController.java:2962)
at org.nuclos.client.ui.collect.CollectController$DefaultCollectStateListener.detailsModeEntered(CollectController.java:4499)
at org.nuclos.client.ui.collect.CollectStateModel.fireDetailsModeEntered(CollectStateModel.java:611)
at org.nuclos.client.ui.collect.CollectStateModel.setCollectState(CollectStateModel.java:273)
at org.nuclos.client.ui.collect.CollectStateModel.setCollectState(CollectStateModel.java:181)
at org.nuclos.client.ui.collect.CollectController.setCollectState(CollectController.java:2922)
at org.nuclos.client.ui.collect.CollectController.enterViewMode(CollectController.java:2414)
at org.nuclos.client.ui.collect.CollectController.access$21(CollectController.java:2410)
at org.nuclos.client.ui.collect.CollectController$43.run(CollectController.java:2402)
at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:888)
at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:842)
at org.nuclos.client.ui.collect.CollectController.cmdEnterViewMode(CollectController.java:2399)
at org.nuclos.client.genericobject.GenericObjectCollectController.cmdEnterViewMode(GenericObjectCollectController.java:3694)
at org.nuclos.client.ui.collect.CollectController.viewSingleCollectable(CollectController.java:1693)
at org.nuclos.client.ui.collect.CollectController.runViewSingleCollectable(CollectController.java:1632)
at org.nuclos.client.ui.collect.CollectController.runViewSingleCollectableWithId(CollectController.java:1654)
at org.nuclos.client.ui.collect.CollectController.runViewSingleCollectableWithId(CollectController.java:1644)
at org.nuclos.client.main.mainframe.MainFrameTabbedPane$1.run(MainFrameTabbedPane.java:395)
at org.nuclos.common2.CommonRunnableAdapter.run(CommonRunnableAdapter.java:38)
at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:888)
at org.nuclos.client.ui.UIUtils.runCommand(UIUtils.java:842)
at org.nuclos.client.ui.UIUtils$4.run(UIUtils.java:942)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
2013-05-14 11:16:15,085 ERROR [org.nuclos.client.scripting.ScriptEvaluator] javax.script.ScriptException: org.nuclos.common.NuclosFatalException: Unknown function:org.nuclet.rules.GetBenutzer
org.nuclos.common.NuclosFatalException: Unknown function:org.nuclet.rules.GetBenutzer
at org.nuclos.server.customcode.CustomCodeManager.invokeFunction(CustomCodeManager.java:344)
at org.nuclos.server.customcode.ejb3.CodeFacadeBean.invokeFunction(CodeFacadeBean.java:187)
at sun.reflect.GeneratedMethodAccessor3316.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:317)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.remoting.support.RemoteInvocationTraceInterceptor.invoke(RemoteInvocationTraceInterceptor.java:77)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy92.invokeFunction(Unknown Source)
at sun.reflect.GeneratedMethodAccessor3315.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.remoting.support.RemoteInvocation.invoke(RemoteInvocation.java:205)
at org.nuclos.server.common.NuclosRemoteInvocationExecutor.invoke(NuclosRemoteInvocationExecutor.java:162)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invoke(RemoteInvocationBasedExporter.java:78)
at org.springframework.remoting.support.RemoteInvocationBasedExporter.invokeAndCreateResult(RemoteInvocationBasedExporter.java:114)
at org.springframework.remoting.httpinvoker.HttpInvokerServiceExporter.handleRequest(HttpInvokerServiceExporter.java:73)
at org.springframework.web.servlet.mvc.HttpRequestHandlerAdapter.handle(HttpRequestHandlerAdapter.java:49)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:925)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:856)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:920)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:827)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:647)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:801)
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.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:150)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:201)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:346)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:259)
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.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:99)
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:936)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407)
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1004)
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:312)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
at org.springframework.remoting.support.RemoteInvocationUtils.fillInClientStackTraceIfPossible(RemoteInvocationUtils.java:45)
at org.springframework.remoting.support.RemoteInvocationResult.recreate(RemoteInvocationResult.java:115)
at org.springframework.remoting.support.RemoteInvocationBasedAccessor.recreateRemoteInvocationResult(RemoteInvocationBasedAccessor.java:85)
at org.springframework.remoting.httpinvoker.HttpInvokerClientInterceptor.invoke(HttpInvokerClientInterceptor.java:148)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy49.invokeFunction(Unknown Source)
at org.nuclos.client.customcode.CodeDelegate.invokeFunction(CodeDelegate.java:83)
at org.nuclos.client.scripting.context.AbstractScriptContext.methodMissing(AbstractScriptContext.java:54)
at org.nuclos.client.scripting.context.AbstractScriptContext.propertyMissing(AbstractScriptContext.java:41)
at sun.reflect.GeneratedMethodAccessor163.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:90)
at groovy.lang.MetaClassImpl.invokeMissingProperty(MetaClassImpl.java:745)
at groovy.lang.MetaClassImpl$12.getProperty(MetaClassImpl.java:1754)
at org.codehaus.groovy.runtime.callsite.GetEffectivePojoPropertySite.getProperty(GetEffectivePojoPropertySite.java:61)
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:227)
at Script4.run(Script4.groovy:1)
at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:320)
at org.codehaus.groovy.jsr223.GroovyScriptEngineImpl.eval(GroovyScriptEngineImpl.java:116)
at javax.script.AbstractScriptEngine.eval(Unknown Source)
at org.nuclos.client.scripting.ScriptEvaluator.eval(ScriptEvaluator.java:54)
at org.nuclos.client.ui.collect.component.AbstractCollectableComponent.setComponentState(AbstractCollectableComponent.java:2214)
at org.nuclos.client.common.EntityCollectController$SubFormsLoader$2.run(EntityCollectController.java:665)
at org.nuclos.client.ui.UIUtils.invokeOnDispatchThread(UIUtils.java:1278)
at org.nuclos.client.common.EntityCollectController$SubFormsLoader.finishLoading(EntityCollectController.java:659)
at org.nuclos.client.common.EntityCollectController$SubFormsLoader.setSubFormLoaded(EntityCollectController.java:707)
at org.nuclos.client.genericobject.GenericObjectCollectController$48.paint(GenericObjectCollectController.java:2866)
at org.nuclos.client.ui.CommonMultiThreader$WorkerThread$1.run(CommonMultiThreader.java:158)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Habe mir das Wiki schon öfters durchgelesen, doch recht viel schlauer werd ich nicht, dazu fehlen mir einfach die einschlägigen Java Kentnisse.
Gruß
Hugo
Hallo Hugo
beim package müsste noch ein s angehängt werden
„package org.nuclet.rules;“
Hatte ich schon probiert, funktoniert leider auch nicht (im Wiki stehts übrigens ohne s)
Ist die unterschiedliche Schreibweise aufgefallen?
@Function(„org.nuclet.rules.geBenutzer“)
!=
def user = context.“#FUNCTION{org.nuclet.rules.GetBenutzer}“;
oh wie peinlich :blush:
es geht aber trotzdem nicht …
package org.nuclet.rules;
import org.nuclos.common.*;
import org.nuclos.server.ruleengine.ejb3.*;
import org.nuclos.api.annotation.Function;
import org.springframework.stereotype.Component;
@Component
public class Benutzer{
private final static RuleInterfaceFacadeBean server = SpringApplicationContextHolder.getBean(RuleInterfaceFacadeBean.class);
@Function("org.nuclet.rules.getBenutzer")
public String getCurrentUser(){
return server.getCurrentUserName();
}
}
def user = context."#FUNCTION{org.nuclet.rules.getBenutzer}";
ERROR [org.nuclos.client.scripting.ScriptEvaluator] javax.script.ScriptException: org.nuclos.common.NuclosFatalException: Unknown function:org.nuclet.rules.getBenutzer
org.nuclos.common.NuclosFatalException: Unknown function:org.nuclet.rules.getBenutzer
3.12 oder 3.13?
In der 3.12 hab ich das kürzlich selbst erfolgreich gemacht.
Vielleicht gibts diesbzgl. einen Bug in der 3.13.
3.11
auf 3.12 kann ich noch nicht umstellen, da bekomme ich nach dem Upgrade noch Kompilierungsfeher
Wir würden hier eher ein Upgrade auf 3.12 vorschlagen, als Zeit für eventuelles Bugfixing in der 3.11 aufzuwenden.
Der zitierte Code sollte eigentlich funktionieren, insofern ist unklar, was falsch laufen könnte.
Welche Kompilierungsfehler bekommen Sie denn beim Upgrade. Zwischen 3.11 und 3.12 hat sich in der alten API meines Wissens nichts geändert.
Das Package „org.nuclet.rules“ muss auch im Nuclet eingetragen sein.
Das wäre noch eine mögliche Fehlerquelle.
ich habe keine Nuclets
Dann sollte die Lösung sein:
a) Nuclet anlegen (und dort im Packagenamen die entsprechende Eintragung machen).
b) Alle Inhalte Ihrer Anwendung diesem Nuclet zuweisen.
Du musst angemeldet sein, um auf dieses Thema antworten zu können.