dirk_kuch
I'm new here

WebEdit: Auslesen von Werten einer Public-Komponente

Jump to solution

Hallo,

wir möchten mit Hilfe einer Public-Komponente eine CMS_INPUT_LIST füllen. Dieses funktioniert im Java-Client ohne Probleme, nur im WebEdit nicht.

Was müssen wir tun, damit dieses auch im WebEdit funktioniert?

Vielen Dank

Dirk Kuch

Wir haben die Komponente, dass Formular, etc. wie folgt definiert:

Version Server: 5.0.210.55494

Eingabe-Formular

<CMS_INPUT_LIST name="tt_rechte" hFill="yes">

  <CMS_INCLUDE_OPTIONS type="public">

    <LABELS>

      <LABEL lang="*">#item.rolelabel</LABEL>

    </LABELS>

    <NAME>roleprovider</NAME>

    <PARAMS>

      <PARAM name="roletype">editorroles</PARAM>

    </PARAMS>

  </CMS_INCLUDE_OPTIONS>

  <LANGINFOS>

    <LANGINFO lang="*" label="Rechte"/>

  </LANGINFOS>

</CMS_INPUT_LIST>

modul.xml

<module>

    <name>${artifactId}</name>

    <version>${project.version}</version>

    <description>---</description>

    <vendor>---</vendor>

    <resources>

        <resource>lib/${artifactId}-${project.version}.jar</resource>

    </resources>

    <components>

      <public>

         <name>roleprovider</name>

         <class>---.rolevalueprovider.RoleIncludeValueProvider</class>

         <description>Rollen IncludeValueProvider</description>

         <resources>

          <resource>lib/---.-${project.version}.jar</resource>

         </resources>

      </public>

    </components>

</module>

Das Öffnen des Formulars im WebEdit liefert folgende Fehlermeldung:

Im WebEdit einen Fehlerdialog mit folgender Meldung:

500 The call failed on the server, see server log for details

Das Öffnen des Formulars in WebEdit liefert folgende Fehlermeldung in der fs-server.log:

ERROR 22.02.2013 12:55:27.750 (de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService): [Sync] call 'StoreElementFormServiceImpl.loadForm()' failed: java.lang.IllegalStateException: loading of public type 'roleprovider' failed, type de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeValueProvider

FSVersion=5.0.210.55494#3053;JDK=1.6.0_31 64bit Sun Microsystems Inc.;OS=Linux 3.0.38-0.5-default amd64;Date=22.02.2013 12:55:27

java.lang.IllegalStateException: loading of public type 'roleprovider' failed, type de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeValueProvider

        at de.espirit.firstspirit.webedit.server.WebeditSpecialistsBroker$WebEditModuleAgent.getTypeForName(WebeditSpecialistsBroker.java:329)

        at de.espirit.firstspirit.access.store.templatestore.gom.HotspotValueProvider.getValueProvider(HotspotValueProvider.java:68)

        at de.espirit.firstspirit.access.store.templatestore.gom.HotspotValueProvider.getValueProvider(HotspotValueProvider.java:62)

        at de.espirit.firstspirit.access.store.templatestore.gom.HotspotValueProvider.getValues(HotspotValueProvider.java:55)

        at de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeOptions$ListOptionAdapter.getValues(GomIncludeOptions.java:294)

        at de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeOptions$ListOptionAdapter.size(GomIncludeOptions.java:309)

        at java.util.AbstractList$Itr.hasNext(AbstractList.java:339)

        at de.espirit.firstspirit.client.access.editor.ListOptionModel.<init>(ListOptionModel.java:43)

        at de.espirit.firstspirit.client.access.editor.ListOptionModel.<init>(ListOptionModel.java:35)

        at de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeOptions$OptionFactoryImpl.getOptionModel(GomIncludeOptions.java:259)

        at de.espirit.firstspirit.webedit.server.gadgets.listselect.ListSelectServerGadget.getWidgetConfiguration(ListSelectServerGadget.java:60)

        at de.espirit.firstspirit.webedit.server.gadgets.listselect.ListSelectServerGadget.getWidgetConfiguration(ListSelectServerGadget.java:31)

        at de.espirit.firstspirit.webedit.server.gadgets.ValueSerializingGwtServerGadgetMediator.getFormConfiguration(ValueSerializingGwtServerGadgetMediator.java:186)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.buildConfigurationNode(AggregatingGwtServerGadgetMediator.java:98)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.getFormConfiguration(AggregatingGwtServerGadgetMediator.java:79)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.buildConfigurationNode(AggregatingGwtServerGadgetMediator.java:98)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.getFormConfiguration(AggregatingGwtServerGadgetMediator.java:79)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.buildConfigurationNode(AggregatingGwtServerGadgetMediator.java:98)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.getFormConfiguration(AggregatingGwtServerGadgetMediator.java:79)

        at de.espirit.firstspirit.webedit.server.gadgets.GwtFormControl.getFormConfiguration(GwtFormControl.java:82)

        at de.espirit.firstspirit.webedit.server.forms.FormSessionManager$FormSessionImpl.toDto(FormSessionManager.java:494)

        at de.espirit.firstspirit.webedit.server.forms.FormSessionManager$FormSessionImpl.toDto(FormSessionManager.java:462)

        at de.espirit.firstspirit.webedit.server.forms.StoreElementFormServiceImpl.loadForm(StoreElementFormServiceImpl.java:127)

        at sun.reflect.GeneratedMethodAccessor203.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$RPCInvoke.call(PollSupportingWebeditService.java:183)

        at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$ServiceCallPollFeedWrapper.call(PollSupportingWebeditService.java:296)

        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

        at java.util.concurrent.FutureTask.run(FutureTask.java:138)

        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

        at java.lang.Thread.run(Thread.java:662)

Caused by: java.lang.ClassNotFoundException: ---.---.rolevalueprovider.RoleIncludeValueProvider

        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

        at de.espirit.firstspirit.server.jetty.JettyClassLoader.loadClass(JettyClassLoader.java:94)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

        at de.espirit.firstspirit.server.jetty.JettyClassLoader.loadClass(JettyClassLoader.java:94)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

        at de.espirit.firstspirit.webedit.server.WebeditSpecialistsBroker$WebEditModuleAgent.getTypeForName(WebeditSpecialistsBroker.java:327)

        ... 32 more

WARN  22.02.2013 12:55:27.751 (/fs5webedit_14126): Exception while dispatching incoming RPC call

FSVersion=5.0.210.55494#3053;JDK=1.6.0_31 64bit Sun Microsystems Inc.;OS=Linux 3.0.38-0.5-default amd64;Date=22.02.2013 12:55:27

com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstract de.espirit.firstspirit.webedit.client.forms.FormSessionDTO de.espirit.firstspirit.webedit.client.forms.StoreElementFormService.loadForm(de.espirit.firstspirit.webedit.client.store.FSID,de.espirit.firstspirit.webedit.client.io.EditorNodeWrapper,java.lang.String) throws de.espirit.firstspirit.webedit.client.store.PermissionException,de.espirit.firstspirit.webedit.client.util.ServiceFailedException' threw an unexpected exception: java.lang.IllegalStateException: loading of public type 'roleprovider' failed, type de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeValueProvider

        at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java:385)

        at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService.logAndEncodeThrowable(PollSupportingWebeditService.java:141)

        at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService.processCall(PollSupportingWebeditService.java:102)

        at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)

        at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:755)

        at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)

        at de.espirit.firstspirit.webedit.server.WebeditService.service(WebeditService.java:71)

        at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:598)

        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1367)

        at de.espirit.firstspirit.io.servlet.WebAuthentication.doChain(WebAuthentication.java:671)

        at de.espirit.firstspirit.webedit.server.ServiceAuthentication.doChain(ServiceAuthentication.java:27)

        at de.espirit.firstspirit.io.servlet.WebAuthentication.doFilter(WebAuthentication.java:534)

        at de.espirit.firstspirit.io.servlet.WebAuthentication.doFilter(WebAuthentication.java:150)

        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1338)

        at de.espirit.firstspirit.webedit.server.BrowserCachingFilter.doFilter(BrowserCachingFilter.java:33)

        at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1338)

        at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:484)

        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)

        at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)

        at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)

        at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)

        at de.espirit.firstspirit.server.jetty.JettyManagerImpl$FailSafeWebAppContext.doHandle(JettyManagerImpl.java:839)

        at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)

        at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)

        at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)

        at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)

        at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)

        at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)

        at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)

        at org.eclipse.jetty.server.Server.handle(Server.java:350)

        at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)

        at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:900)

        at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:954)

        at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:851)

        at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)

        at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:77)

        at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:606)

        at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:46)

        at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:603)

        at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:538)

        at java.lang.Thread.run(Thread.java:662)

Caused by: java.lang.IllegalStateException: loading of public type 'roleprovider' failed, type de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeValueProvider

        at de.espirit.firstspirit.webedit.server.WebeditSpecialistsBroker$WebEditModuleAgent.getTypeForName(WebeditSpecialistsBroker.java:329)

        at de.espirit.firstspirit.access.store.templatestore.gom.HotspotValueProvider.getValueProvider(HotspotValueProvider.java:68)

        at de.espirit.firstspirit.access.store.templatestore.gom.HotspotValueProvider.getValueProvider(HotspotValueProvider.java:62)

        at de.espirit.firstspirit.access.store.templatestore.gom.HotspotValueProvider.getValues(HotspotValueProvider.java:55)

        at de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeOptions$ListOptionAdapter.getValues(GomIncludeOptions.java:294)

        at de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeOptions$ListOptionAdapter.size(GomIncludeOptions.java:309)

        at java.util.AbstractList$Itr.hasNext(AbstractList.java:339)

        at de.espirit.firstspirit.client.access.editor.ListOptionModel.<init>(ListOptionModel.java:43)

        at de.espirit.firstspirit.client.access.editor.ListOptionModel.<init>(ListOptionModel.java:35)

        at de.espirit.firstspirit.access.store.templatestore.gom.GomIncludeOptions$OptionFactoryImpl.getOptionModel(GomIncludeOptions.java:259)

        at de.espirit.firstspirit.webedit.server.gadgets.listselect.ListSelectServerGadget.getWidgetConfiguration(ListSelectServerGadget.java:60)

        at de.espirit.firstspirit.webedit.server.gadgets.listselect.ListSelectServerGadget.getWidgetConfiguration(ListSelectServerGadget.java:31)

        at de.espirit.firstspirit.webedit.server.gadgets.ValueSerializingGwtServerGadgetMediator.getFormConfiguration(ValueSerializingGwtServerGadgetMediator.java:186)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.buildConfigurationNode(AggregatingGwtServerGadgetMediator.java:98)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.getFormConfiguration(AggregatingGwtServerGadgetMediator.java:79)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.buildConfigurationNode(AggregatingGwtServerGadgetMediator.java:98)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.getFormConfiguration(AggregatingGwtServerGadgetMediator.java:79)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.buildConfigurationNode(AggregatingGwtServerGadgetMediator.java:98)

        at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.getFormConfiguration(AggregatingGwtServerGadgetMediator.java:79)

        at de.espirit.firstspirit.webedit.server.gadgets.GwtFormControl.getFormConfiguration(GwtFormControl.java:82)

        at de.espirit.firstspirit.webedit.server.forms.FormSessionManager$FormSessionImpl.toDto(FormSessionManager.java:494)

        at de.espirit.firstspirit.webedit.server.forms.FormSessionManager$FormSessionImpl.toDto(FormSessionManager.java:462)

        at de.espirit.firstspirit.webedit.server.forms.StoreElementFormServiceImpl.loadForm(StoreElementFormServiceImpl.java:127)

        at sun.reflect.GeneratedMethodAccessor203.invoke(Unknown Source)

        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)

        at java.lang.reflect.Method.invoke(Method.java:597)

        at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$RPCInvoke.call(PollSupportingWebeditService.java:183)

        at de.espirit.firstspirit.webedit.server.control.PollSupportingWebeditService$ServiceCallPollFeedWrapper.call(PollSupportingWebeditService.java:296)

        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)

        at java.util.concurrent.FutureTask.run(FutureTask.java:138)

        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)

        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)

        ... 1 more

Caused by: java.lang.ClassNotFoundException: ---.---.rolevalueprovider.RoleIncludeValueProvider

        at java.net.URLClassLoader$1.run(URLClassLoader.java:202)

        at java.security.AccessController.doPrivileged(Native Method)

        at java.net.URLClassLoader.findClass(URLClassLoader.java:190)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)

        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

        at de.espirit.firstspirit.server.jetty.JettyClassLoader.loadClass(JettyClassLoader.java:94)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

        at de.espirit.firstspirit.server.jetty.JettyClassLoader.loadClass(JettyClassLoader.java:94)

        at java.lang.ClassLoader.loadClass(ClassLoader.java:247)

        at de.espirit.firstspirit.webedit.server.WebeditSpecialistsBroker$WebEditModuleAgent.getTypeForName(WebeditSpecialistsBroker.java:327)

        ... 32 more

0 Kudos
1 Solution

Accepted Solutions
feddersen
Community Manager

Hallo Dirk,

damit die Klasse im WebEdit zur Verfügung steht, musst du in deinem Modul auch eine Web-App definieren, die ebenfalls dein jar enthält. Diese dann über die Adminkonsole in der WebEdit-Umgebung des Projektes installieren.

Viele Grüße

Christoph

View solution in original post

0 Kudos
2 Replies
feddersen
Community Manager

Hallo Dirk,

damit die Klasse im WebEdit zur Verfügung steht, musst du in deinem Modul auch eine Web-App definieren, die ebenfalls dein jar enthält. Diese dann über die Adminkonsole in der WebEdit-Umgebung des Projektes installieren.

Viele Grüße

Christoph

0 Kudos

Hallo Christoph,

super, das war's 🙂

Vielen Dank für Deine Hilfe und schönes Wochenende

Dirk

0 Kudos