-
Bug
-
Resolution: Fixed
-
Neutral
-
6.2.8
-
-
Empty show more show less
-
Yes
-
Maintenance 57
-
3
Steps to reproduce
- Import the sample classes (com.baloise.actions.HelloWorldDefinition and com.baloise.actions.HelloWorld) in the groovy app: scripts.com.xml
- Configure a new action in, for example, contacts app that uses the groovy classes. config.modules.contacts.apps.contacts.subApps.browser.actions.sayHello.xml
- Add new action to the action bar.
- Open contacts app
Expected results
When opening the app, the new action appears and when clicking on it, the message is printed
Actual results
When opening the app, there's an error
Workaround
Using classes from a maven module
Development notes
This seems to be related to ByteBuddy, specifically ByteBuddyI18nizer. In fact, when using a groovy class for a command, as this example, it works ok since byte buddy is not involved. Besides, in 5.7 it does not happen.
This is the stack trace
ERROR agnolia.ui.framework.app.AppInstanceControllerImpl: Sub-app [browser] of app [contacts] failed to start java.lang.IllegalArgumentException: Could not create type at net.bytebuddy.TypeCache.findOrInsert(TypeCache.java:154) ~[byte-buddy-1.10.8.jar:?] at net.bytebuddy.TypeCache$WithInlineExpunction.findOrInsert(TypeCache.java:365) ~[byte-buddy-1.10.8.jar:?] ... Caused by: java.lang.ClassNotFoundException: com.baloise.actions.HelloWorldDefinition at net.bytebuddy.dynamic.loading.ByteArrayClassLoader.findClass(ByteArrayClassLoader.java:348) ~[byte-buddy-1.10.8.jar:?] at java.lang.ClassLoader.loadClass(ClassLoader.java:424) ~[?:1.8.0_121]
Acceptance criteria