MarcusDau
Occasional Collector

FS5: WebEdit von Tabellen wirft 500er Fehler

Hallo!

Ich habe folgende Absatzvorlage:

<CMS_HEADER>

<CMS_FUNCTION name="Table" resultname="fr_st_tabelle_result">

  <CMS_PARAM name="tableData" value="st_tabelle" />

  <CMS_NODE_PARAM name="tableFormat">

    <HEADERSPEC><![CDATA[

    $CMS_IF(st_cellpadding == "2")$

        $CMS_SET(padding,"padding2")$

    $CMS_ELSE$

        $CMS_SET(padding,"padding0")$

    $CMS_END_IF$

    <table border="0" cellspacing="$CMS_VALUE(st_cellspacing)$" width="$CMS_VALUE(st_tablewidth)$"$CMS_IF(st_cellspacing == "0")$ class="topmargin bordercollapse"$CMS_END_IF$$CMS_IF(#global.preview)$$CMS_VALUE(editorId(editorName:"st_tabelle"))$$CMS_END_IF$>$CMS_VALUE(#content)$</table>

    ]]></HEADERSPEC>

   

    <ROW number="ALL"><![CDATA[<tr>$CMS_VALUE(#content)$</tr>]]></ROW>

   

    <CELL col="ALL" row="ALL"><![CDATA[<t$CMS_IF(#cell.attr("th") == "1")$h$CMS_ELSE$d$CMS_END_IF$$CMS_IF(#cell.colspan > 1)$$CMS_IF(!#cell.attr("breite").isEmpty && !#cell.attr("breite").toString().equals(""))$ width="$CMS_VALUE(#cell.attr("breite"))$"$CMS_END_IF$ colspan="$CMS_VALUE(#cell.colspan)$"$CMS_END_IF$$CMS_IF(#cell.rowspan > 1)$ rowspan="$CMS_VALUE(#cell.rowspan)$"$CMS_END_IF$ class="$CMS_IF(!#cell.attr("titleTag").isEmpty)$help $CMS_END_IF$$CMS_VALUE(padding)$ $CMS_IF(#cell.attr("tdt") == "1" || #cell.attr("tdr") == "1" || #cell.attr("tdb") == "1" || #cell.attr("tdl") == "1")$$CMS_IF(#cell.attr("tdt") == "1")$ bordertop$CMS_END_IF$$CMS_IF(#cell.attr("tdr") == "1")$ borderright$CMS_END_IF$$CMS_IF(#cell.attr("tdb") == "1")$ borderbottom$CMS_END_IF$$CMS_IF(#cell.attr("tdl") == "1")$ borderleft$CMS_END_IF$$CMS_ELSE$$CMS_IF(st_tableborder == "1")$ bordertop borderright borderbottom borderleft$CMS_END_IF$$CMS_END_IF$$CMS_IF(#cell.attr("halign") == "3")$ alignright$CMS_ELSIF(#cell.attr("halign") == "2")$ aligncenter$CMS_ELSE$ alignleft$CMS_END_IF$$CMS_IF(#cell.attr("valign") == "3")$ valignbottom$CMS_ELSIF(#cell.attr("valign") == "2")$ valignmiddle$CMS_ELSE$ valigntop$CMS_END_IF$$CMS_IF(#cell.attr("highlight") == "1" || #cell.attr("th") == "1")$ hintergrund$CMS_END_IF$ exalead"$CMS_IF(#cell.attr("nowrap") == "1")$ nowrap="nowrap"$CMS_END_IF$$CMS_IF(!#cell.attr("titleTag").isEmpty)$ title="$CMS_VALUE(#cell.attr("titleTag"))$"$CMS_END_IF$>$CMS_IF(#cell.attr("anker") == "1")$<a name="$CMS_VALUE(#content)$"></a>$CMS_END_IF$$CMS_VALUE(#content)$</t$CMS_IF(#cell.attr("th") == "1")$h$CMS_ELSE$d$CMS_END_IF$>]]></CELL>

 

  </CMS_NODE_PARAM>

</CMS_FUNCTION>

</CMS_HEADER>

$CMS_VALUE(fr_section_group_string)$

<fsp:isAuthorized userRange="loggedIn" groups="$CMS_VALUE(perm)$">

$CMS_IF(#global.preview)$

    <div$CMS_VALUE(editorId())$>

$CMS_END_IF$

$CMS_TRIM(level:4)$

$CMS_IF(!st_ueberschrift.isEmpty)$

    <h2 class="exalead"$CMS_IF(#global.preview)$$CMS_VALUE(editorId(editorName:"st_ueberschrift"))$$CMS_END_IF$>$CMS_VALUE(st_ueberschrift)$</h2>

$CMS_END_IF$

$CMS_VALUE(fr_st_tabelle_result)$

<br /><br />

$CMS_END_TRIM$

$CMS_IF(#global.preview)$

    </div>

$CMS_END_IF$

</fsp:isAuthorized>

Möchte ich so einen Absatz nun per WebEdit bearbeiten, dann kommt folgender Fehler:

dau_611.jpg

In der localhost.log des Tomcats finde ich das dazu:

Aug 09, 2013 7:53:52 AM org.apache.catalina.core.ApplicationContext log

SEVERE: Exception while dispatching incoming RPC call

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.NullPointerException

    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:647)

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

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

    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

    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.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243)

    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210)

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

    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:953)

    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118)

    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)

    at org.apache.coyote.ajp.AjpProcessor.process(AjpProcessor.java:200)

    at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:589)

    at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:310)

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)

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

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

Caused by: java.lang.NullPointerException

    at de.espirit.firstspirit.agency.MultiFormValidationReportImpl.<init>(MultiFormValidationReportImpl.java:38)

    at de.espirit.firstspirit.forms.rules.Rules.validate(Rules.java:199)

    at de.espirit.firstspirit.forms.rules.Rules.validate(Rules.java:180)

    at de.espirit.firstspirit.forms.rules.Rules.validate(Rules.java:157)

    at de.espirit.firstspirit.client.access.link.Links.validate(Links.java:49)

    at de.espirit.firstspirit.access.editor.value.DomElementImpl.getHtmlLink(DomElementImpl.java:525)

    at de.espirit.firstspirit.access.editor.value.DomElementImpl.toText(DomElementImpl.java:362)

    at de.espirit.firstspirit.access.editor.value.DomElementImpl.toText(DomElementImpl.java:466)

    at de.espirit.firstspirit.access.editor.value.DomElementImpl.toText(DomElementImpl.java:443)

    at de.espirit.firstspirit.access.editor.value.DomElementImpl.toText(DomElementImpl.java:431)

    at de.espirit.firstspirit.access.editor.value.DomElementImpl.toText(DomElementImpl.java:377)

    at de.espirit.firstspirit.access.editor.value.DomElementImpl.toText(DomElementImpl.java:253)

    at de.espirit.firstspirit.webedit.server.gadgets.domtable.DomTableServerGadget.getSerializedValue(DomTableServerGadget.java:231)

    at de.espirit.firstspirit.webedit.server.gadgets.domtable.DomTableServerGadget.getSerializedValue(DomTableServerGadget.java:63)

    at de.espirit.firstspirit.webedit.server.gadgets.ValueSerializingGwtServerGadgetMediator.loadSerializedField(ValueSerializingGwtServerGadgetMediator.java:284)

    at de.espirit.firstspirit.webedit.server.gadgets.ValueSerializingGwtServerGadgetMediator.serialize(ValueSerializingGwtServerGadgetMediator.java:276)

    at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.serialize(AggregatingGwtServerGadgetMediator.java:128)

    at de.espirit.firstspirit.webedit.server.gadgets.AggregatingGwtServerGadgetMediator.serialize(AggregatingGwtServerGadgetMediator.java:128)

    at de.espirit.firstspirit.webedit.server.gadgets.GwtFormControl.serialize(GwtFormControl.java:64)

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

    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)

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

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

    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:334)

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

    ... 3 more

Was soll mir das sagen? Im Mithras-Demo-Projekt funktioniet das problemlos. Wo habe ich denn was übersehen bzw. falsch eingebaut?

Grüße

Marcus

0 Kudos
1 Reply
jobrun
Crownpeak employee

Hallo,

leider kann ich dieses Problem nicht reproduzieren.

Das bearbeiten der DOMTABLE im Webclient funktioniert mit ihrem Code problemlos.

Ich möchte Sie mit diesem Problem gerne an unseren Helpdesk verweisen.

Grüße

Johannes

0 Kudos