Search the FirstSpirit Knowledge Base
Ich versuche jetzt schon seit geraumer Zeit ein simples Kontaktformular mit Form Edit aufzusetzen, aber ich bekomme es einfach nicht hin.
Mit Hilfe eines Mail Loggers soll der Inhalt des Formualrs per Mail verschickt werden.
Ich bin genau nach der Doku vorgegangen, habe in den Datenquellen einen Maillogger angelegt, eine Seite auf Basis des Templates formLoggersIni erzeugt und in das Feld "modifiziere form start Templates" die ID der Form Start Absatzvorlage (hier 44) eingetragen. Schaue ich mir Fehler der Vorschau an, wird mir nichts angezeigt.
Nach der Generierung des Projekts steht aber absolut nichts in der fs-formlogger.ini Datei und kaum klicke ich auf den Submitbutton des Formulars erhalte ich die Fehlermeldung :
javax.servlet.ServletException: Missing ini parameter: loggers
de.espirit.firstspirit.opt.formedit.FormServlet.loadLoggers(FormServlet.java:140)
de.espirit.firstspirit.opt.formedit.FormServlet.init(FormServlet.java:107)
javax.servlet.GenericServlet.init(GenericServlet.java:212)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:291)
org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:775)
org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:704)
org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:897)
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:685)
java.lang.Thread.run(Thread.java:619)
Ich wäre über jegliche Art von Hilfe oder Hinweis sehr dankbar.
Gruß,
Stefan
Gibt es Fehler in der Vorschau bzw. bei der Generierung der ini? Dies müsste der Fall sein. Über welche FS/Modul Version reden wir den hier? Die Nutzung der ID ist eigentlich in der aktuellen Variante nicht mehr vorgesehen sondern die uid.
Hallo Herr Klein,
nein, es gibt keinen Fehler das ist ja das Problem. Rufe ich auf der fs-formlogger.ini Seite in der Inhalteverwaltung Fehler der Vorschau anzeigen auf, wird mir angezeigt, dass es keine Fehler gibt. Wenn man sich das Logfile anschaut sieht man, dass wohl auch die Datei erzeugt wird:
reload
13.04.2011 08:46:09.020 INFO (de.espirit.firstspirit.generate.PreviewProduction): generating 'fsformloggerini' (id=51378, html, DE), content processor de.espirit.firstspirit.generate.EmptyContentProcessor@5e189fae
13.04.2011 08:46:09.215 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Script 'formGenerateLogger' starts
13.04.2011 08:46:09.218 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): get Stores
13.04.2011 08:46:09.292 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): schema/session
13.04.2011 08:46:09.336 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): get Parameter
13.04.2011 08:46:09.338 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Language:DE
13.04.2011 08:46:09.338 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): FormStartIds: 44
13.04.2011 08:46:09.442 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): get form starts
13.04.2011 08:46:09.443 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): FormStart size :1
13.04.2011 08:46:09.686 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Template:<TEMPLATE comment="" editor="15071" filename="FormularStart" hidden="0" id="48202" lastchange="1188548360656" revision="3104" templateid="44" type="section" version="0.62">
<EXTENSION file="html" jsp="0" link="html" replaceable="false" templateSet="49035"/>
<EXTENSION file="jsp" link="jsp" templateSet="49036"/>
<EXTENSION file="jsp" link="jsp" templateSet="49037"/>
<EXTENSION file="fo" link="pdf" templateSet="49038"/>
<EXTENSION file="jsp" link="jsp" templateSet="49039"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<EXTENSION anchor="0" file="fo" jsp="0" link="pdf" templateSet="49031"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<EXTENSION anchor="0" file="html" jsp="0" link="htm" templateSet="48163"/>
<LANG displayname="form start" language="DE"/>
</TEMPLATE>
13.04.2011 08:46:09.712 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Sections:4
13.04.2011 08:46:09.713 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): SectionIdReferenceEntry[IdRef[TEMPLATESTORE:48209/S]]
13.04.2011 08:46:09.716 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): SectionIdReferenceEntry[IdRef[PAGESTORE:52041/S]]
13.04.2011 08:46:09.718 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): ReferencedObject:<SECTION editor="14946" id="52041" name="formstart" revision="5516" sectiontemplate="44">
<LANG displayname="form start" language="DE"/>
</SECTION>
13.04.2011 08:46:09.719 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): SectionIdReferenceEntry[IdRef[TEMPLATESTORE:52099/S]]
13.04.2011 08:46:09.719 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): SectionIdReferenceEntry[IdRef[PAGESTORE:49240/S]]
13.04.2011 08:46:09.728 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): ReferencedObject:<SECTION editor="1" id="49240" name="formstart" revision="5603" sectiontemplate="44">
<LANG displayname="form start" language="DE"/>
</SECTION>
13.04.2011 08:46:09.777 INFO (de.espirit.or.impl.query.SelectSaxHandler): ignoring token ORDER
13.04.2011 08:46:10.328 INFO (de.espirit.or.impl.connection.ConnectionManagerFactory): Create a new Connection pool for jdbc:derby:projects/project_48159/derby;create=true;user=user0
13.04.2011 08:46:10.338 INFO (de.espirit.or.impl.connection.DBConnectionManager): Driver: sun.misc.Launcher$AppClassLoader@6d6f0472
13.04.2011 08:46:10.339 INFO (de.espirit.or.impl.connection.DBConnectionManager): Connection manager: sun.misc.Launcher$AppClassLoader@6d6f0472
13.04.2011 08:46:10.339 INFO (de.espirit.or.impl.connection.DBConnectionManager): org.apache.derby.jdbc.EmbeddedDriver: Major 10, minor 2, jdbc compliant = true
13.04.2011 08:46:10.342 INFO (de.espirit.or.impl.connection.DBConnectionManager): Created connection pool with 1 initial connections, maximum pool size is 1
13.04.2011 08:46:10.454 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): SectionData<TEMPLATECONTENT><CMS_VALUE name="st_loggers"><LANG id="DE" set="1"><LIST table="formLogger" template="form_edit.formLogger"><VALUE><KEY_VALUE class="java.lang.Integer">512</KEY_VALUE></VALUE></LIST></LANG></CMS_VALUE><CMS_VALUE name="st_method"><LANG id="§" set="0"/></CMS_VALUE><CMS_VALUE name="st_name"><LANG id="DE" set="1"><TEXT>kontakt</TEXT></LANG></CMS_VALUE><CMS_VALUE name="st_noerrorPage"><LANG id="DE" set="0"/></CMS_VALUE><CMS_VALUE name="st_script"><LANG id="§" set="0"/></CMS_VALUE><CMS_VALUE name="st_errorPage"><LANG id="DE" set="0"/></CMS_VALUE><CMS_VALUE name="st_clientsite_check"><LANG id="§" set="0"/></CMS_VALUE><CMS_VALUE name="st_fileupload"><LANG id="§" set="0"/></CMS_VALUE><CMS_VALUE name="st_title"><LANG id="DE" set="0"/></CMS_VALUE></TEMPLATECONTENT>
13.04.2011 08:46:10.455 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): inputName:<CMS_VALUE name="st_name"><LANG id="DE" set="1"><TEXT>kontakt</TEXT></LANG></CMS_VALUE>
13.04.2011 08:46:10.456 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): LanguageDE
13.04.2011 08:46:10.457 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): formName:kontakt
13.04.2011 08:46:10.457 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): CL<CMS_VALUE name="st_loggers"><LANG id="DE" set="1"><LIST table="formLogger" template="form_edit.formLogger"><VALUE><KEY_VALUE class="java.lang.Integer">512</KEY_VALUE></VALUE></LIST></LANG></CMS_VALUE>
13.04.2011 08:46:10.458 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): KEY:<VALUE><KEY_VALUE class="java.lang.Integer">512</KEY_VALUE></VALUE>
13.04.2011 08:46:10.458 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): KeyValue:<VALUE><KEY_VALUE class="java.lang.Integer">512</KEY_VALUE></VALUE>
13.04.2011 08:46:10.535 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): WichtigKontakt-Logger
13.04.2011 08:46:10.535 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Sprache: DEName: Kontakt-Logger
13.04.2011 08:46:10.592 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): SectionData<TEMPLATECONTENT><CMS_VALUE name="st_loggers"><LANG id="DE" set="1"><LIST table="formLogger" template="form_edit.formLogger"><VALUE><KEY_VALUE class="java.lang.Integer">448</KEY_VALUE></VALUE></LIST></LANG></CMS_VALUE><CMS_VALUE name="st_method"><LANG id="§" set="1"><SEL><VALUE>post</VALUE></SEL></LANG></CMS_VALUE><CMS_VALUE name="st_name"><LANG id="DE" set="1"><TEXT>Kontakt</TEXT></LANG></CMS_VALUE><CMS_VALUE name="st_noerrorPage"><LANG id="DE" set="1"><REF>pageref:kontaktok</REF></LANG></CMS_VALUE><CMS_VALUE name="st_script"><LANG id="§" set="1"/></CMS_VALUE><CMS_VALUE name="st_errorPage"><LANG id="DE" set="1"><REF>pageref:kontaktfehler</REF></LANG></CMS_VALUE><CMS_VALUE name="st_clientsite_check"><LANG id="§" set="1"><SEL/></LANG></CMS_VALUE><CMS_VALUE name="st_fileupload"><LANG id="§" set="0"/></CMS_VALUE><CMS_VALUE name="st_title"><LANG id="DE" set="0"/></CMS_VALUE></TEMPLATECONTENT>
13.04.2011 08:46:10.593 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): inputName:<CMS_VALUE name="st_name"><LANG id="DE" set="1"><TEXT>Kontakt</TEXT></LANG></CMS_VALUE>
13.04.2011 08:46:10.593 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): LanguageDE
13.04.2011 08:46:10.593 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): formName:Kontakt
13.04.2011 08:46:10.593 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): CL<CMS_VALUE name="st_loggers"><LANG id="DE" set="1"><LIST table="formLogger" template="form_edit.formLogger"><VALUE><KEY_VALUE class="java.lang.Integer">448</KEY_VALUE></VALUE></LIST></LANG></CMS_VALUE>
13.04.2011 08:46:10.594 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): KEY:<VALUE><KEY_VALUE class="java.lang.Integer">448</KEY_VALUE></VALUE>
13.04.2011 08:46:10.594 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): KeyValue:<VALUE><KEY_VALUE class="java.lang.Integer">448</KEY_VALUE></VALUE>
13.04.2011 08:46:10.609 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): WichtigKontakt
13.04.2011 08:46:10.609 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Sprache: DEName: Kontakt
13.04.2011 08:46:10.610 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Writes Ini
13.04.2011 08:46:10.615 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): loggers geschrieben
13.04.2011 08:46:10.616 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): FORMKontakt
13.04.2011 08:46:10.616 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): FORMkontakt
13.04.2011 08:46:10.617 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): formulare geschrieben
13.04.2011 08:46:10.664 INFO (de.espirit.firstspirit.server.sessionmanagement.SessionManagerImpl): new session (ID=2290920565630295783, user=SYSTEM, userID=0, type=DUMMY) created
13.04.2011 08:46:10.679 INFO (de.espirit.firstspirit.store.access.AccessStoreBuilder): TEMPLATESTORE loaded in 0ms
13.04.2011 08:46:10.699 INFO (de.espirit.firstspirit.store.access.AccessStoreBuilder): SITESTORE loaded in 0ms
13.04.2011 08:46:10.732 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): loggers=Kontakt-Logger,Kontakt
loggers.Kontakt=Kontakt
loggers.kontakt=Kontakt-Logger
Kontakt-Logger.class=de.espirit.firstspirit.opt.formedit.MailLogger
Kontakt-Logger.smtpHost=localhost
Kontakt-Logger.encoding=UTF-8
Kontakt-Logger.mailTemplatePath=$CMS_REF(pageref:"kontaktmailer",abs:2)$
Kontakt.class=de.espirit.firstspirit.opt.formedit.MailLogger
Kontakt.smtpHost=localhost
Kontakt.mailTemplatePath=$CMS_REF(pageref:"kontaktmailer",abs:2)$
13.04.2011 08:46:10.733 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): Script 'formGenerateLogger' ends
Auf dem Server läuft FirstSpirit in der nicht ganz so aktuellen Version 4.2.19, das Modul hat hingegen die Version 4.2.44.36563. Eine andere Version liegt uns nicht vor. Sollte es eine für diese FS Version passendere Version geben, wäre es gut, wenn sie uns diese nennen und gegebenenfalls zur Verfügung stellen könnten.
Ok laut dem log ist FS seitig alles ok.
Stefan Zülch schrieb:
13.04.2011 08:46:10.732 DEBUG (Script 'formGenerateLoggers' (id=49220) at 0, 0): loggers=Kontakt-Logger,Kontaktloggers.Kontakt=Kontakt
loggers.kontakt=Kontakt-Logger
Kontakt-Logger.class=de.espirit.firstspirit.opt.formedit.MailLogger
Kontakt-Logger.smtpHost=localhost
Kontakt-Logger.encoding=UTF-8
Kontakt-Logger.mailTemplatePath=$CMS_REF(pageref:"kontaktmailer",abs:2)$
Kontakt.class=de.espirit.firstspirit.opt.formedit.MailLogger
Kontakt.smtpHost=localhost
Kontakt.mailTemplatePath=$CMS_REF(pageref:"kontaktmailer",abs:2)$
Das ist ja der Inhalt der Datei. Dann ist wohl für die webapp ein falscher Pfad eingetragen der eine andere Datei referenziert.
Auf dem Server läuft FirstSpirit in der nicht ganz so aktuellen Version 4.2.19, das Modul hat hingegen die Version 4.2.44.36563. Eine andere Version liegt uns nicht vor. Sollte es eine für diese FS Version passendere Version geben, wäre es gut, wenn sie uns diese nennen und gegebenenfalls zur Verfügung stellen könnten.
Das ist ok, solange FS und FomEdit-Modul des gleichen Release benutzt werden (hier: 4.2R0).
Hm, also auf dem Tomcat liegt die fs-formlogger.ini im Verzeichnism webappname/de/conf/.
Im WEB-INF Verzeichnis liegt eine fs-formedit.ini mit dem Inhalt:
#FirstSpirit FormEdit - configuration.
#Tue Apr 12 15:21:33 CEST 2011
formEncoding=UTF-8
captchaWidth=100
errorRedirect=error.jsp
captchaChars=6
captchaHeight=50
iniFile=de/conf/fs-formlogger.ini
pathPrefix=de/internetportal/kontakt/
okRedirect=ok.jsp
Der Inhalt der web.xml ist folgendermaßen:
<?xml version="1.0" encoding="UTF-8"?>
<web-app id="48254LIVE" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<display-name>48254LIVE</display-name>
<servlet>
<servlet-name>fsfe-FormLogger</servlet-name>
<servlet-class>de.espirit.firstspirit.opt.formedit.FormServlet</servlet-class>
<init-param>
<param-name>pathPrefix</param-name>
<param-value>de/internetportal/kontakt/</param-value> </init-param>
<init-param>
<param-name>iniFile</param-name>
<param-value>de/conf/fs-formlogger.ini</param-value> </init-param>
<init-param>
<param-name>okRedirect</param-name>
<param-value>ok.jsp</param-value> </init-param>
<init-param>
<param-name>errorRedirect</param-name>
<param-value>error.jsp</param-value> </init-param>
<init-param>
<param-name>formEncoding</param-name>
<param-value>UTF-8</param-value> </init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet>
<servlet-name>FormCaptcha</servlet-name>
<servlet-class>de.espirit.firstspirit.opt.formedit.CaptchaServlet</servlet-class>
<init-param>
<param-name>width</param-name>
<param-value>100</param-value> </init-param>
<init-param>
<param-name>height</param-name>
<param-value>50</param-value> </init-param>
<init-param>
<param-name>chars</param-name>
<param-value>6</param-value> </init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>FormCaptcha</servlet-name>
<url-pattern>*.captcha</url-pattern>
</servlet-mapping>
<servlet-mapping>
<servlet-name>fsfe-FormLogger</servlet-name>
<url-pattern>*.form</url-pattern>
</servlet-mapping>
</web-app>
Meines Erachtens ist sollte da der Pfad zur fs-formlogger.ini ja eigentlich richtig angegeben sein.
Lösche ich die fs-formlogger.ini Datei aus dem conf Verzeichnis, wird sie bei einem neuen Deployment auch wieder neu angelegt, nur halt einfach ohne jeden Inhalt. Bin da jetzt echt langsam ratlos.
Achso, was mir noch einfällt, wo steht denn, das in der aktuellen Version des Moduls die uid und nicht mehr die Objekt ID bei der Erstellung der fs-formlogger.ini angegeben werden muss. Also in der Doku von Form-Edit aus FS Release 4 steht das zumindest nicht so.
Laut dem Log auszug ist die Datei nicht leer...
Die Konfiguration passt sofern die Ordner "WEB-INF" und "de" auf gleicher Höhe liegen (Geschwister).
Das weiß ich, ich sehe aber auch das sie auf dem Server leider leer ist. :smileycry:
Das ist ja das seltsame. Und ja WEB-INF und de liegen auf genau einer Ebene.
Sind den Preview und Staging auch leer? Ohne jetzt auf das Template und das verwendete Script zuschauen, kann ich da wohl nicht weiterhelfen. Evl. mal die beide sachen exportieren und hier posten... Bitte dann auch ein Screenshot wie die Eingabekomponenten der Seite loggers.ini gefüllt sind.
Bei der Preview passiert nach klick auf den Submit Button des Formulars einfach gar nichts, somit aber auch keine Fehlermeldung. Konfiguriert ist die Preview, wie auf folgendem Screenshot zu sehen genauso wie die Live Umgebung:
Staging haben wir gar nicht eingerichtet. Leider habe ich nicht die Möglichkeit das FS Generierungsverzeichnis einzusehen, da der Auftritt nicht bei uns gehostet wird.
Was soll ich ihnen denn exportieren? Die Templates??
Das Template für die Generierung der fs-formlogger.ini sieht wie auf folgendem Screenshot gezeigt aus:
Die Funktion Formulare zuversenden steht im Preview nicht zur Vergügung. Mich interresiert ja nur ob die fs-loggers.ini im Preview und nach einfachen "Projekt generieren" auch leer ist.
Die interresanten Templates sind das Seitentemplate für die fs-formlogger.ini und das darin aufgerufe Script.