ccm-simplesurvey compiliert wieder. App started, unter ~/ccm/simplesurvey erhält man eine Ausgabe, aber die Admin Link führt zu einem Fehler.

git-svn-id: https://svn.libreccm.org/ccm/trunk@767 8810af33-2d31-482b-a856-94f89814c4df
master
pb 2011-02-26 10:14:45 +00:00
parent 03b0e91853
commit 5083e1cbbf
5 changed files with 60 additions and 20 deletions

View File

@ -66,17 +66,12 @@ public class Initializer extends CompoundInitializer {
} }
// public Configuration getConfiguration() {
// return m_conf;
// }
public void init(DomainInitEvent e) { public void init(DomainInitEvent e) {
s_log.warn("Bookmarks app is initializing using .init(DomainInitEvent e)"); s_log.info("Bookmarks app is initializing using .init(DomainInitEvent e)");
// setupDomainFactory(); // setupDomainFactory();
TransactionContext txn = SessionManager.getSession() TransactionContext txn = SessionManager.getSession()
.getTransactionContext(); .getTransactionContext();
txn.beginTxn(); txn.beginTxn();
setupBookmarks(); setupBookmarks();
txn.commitTxn(); txn.commitTxn();

View File

@ -79,13 +79,13 @@ import org.apache.log4j.Logger;
* </ol> * </ol>
* *
* <p>Configuration can be modified by configuration parameters before processing, * <p>Configuration can be modified by configuration parameters before processing,
* otherwise hardcoded default values take effect. After processing the * otherwise hardcoded default values take effect. After processing, the
* installation values can not be modified anymore without a fresh installation * installation values can not be modified anymore without a fresh installation
* of the whole system.</p> * of the whole system.</p>
* *
* @author Peter Boy &lt;pboy@barkhof.uni-bremen.de&gt; * @author Peter Boy &lt;pboy@barkhof.uni-bremen.de&gt;
* @since ccm-cms version 6.6.0 * @since ccm-cms version 6.6.0
* @version $Id: $ * @version $Id: Loader.java $
*/ */
public class Loader extends PackageLoader { public class Loader extends PackageLoader {

View File

@ -27,8 +27,8 @@ import com.arsdigita.formbuilder.PersistentProcessListener;
import com.arsdigita.formbuilder.PersistentDataQuery; import com.arsdigita.formbuilder.PersistentDataQuery;
import com.arsdigita.formbuilder.PersistentComponent; import com.arsdigita.formbuilder.PersistentComponent;
//__import com.arsdigita.kernel.BaseInitializer; //__import com.arsdigita.kernel.BaseInitializer;
import com.arsdigita.persistence.SessionManager; // import com.arsdigita.persistence.SessionManager;
import com.arsdigita.persistence.TransactionContext; // import com.arsdigita.persistence.TransactionContext;
import com.arsdigita.runtime.ConfigError; import com.arsdigita.runtime.ConfigError;
import java.util.Iterator; import java.util.Iterator;

View File

@ -22,7 +22,7 @@ import com.arsdigita.db.DbHelper;
import com.arsdigita.persistence.pdl.ManifestSource; import com.arsdigita.persistence.pdl.ManifestSource;
import com.arsdigita.persistence.pdl.NameFilter; import com.arsdigita.persistence.pdl.NameFilter;
import com.arsdigita.runtime.CompoundInitializer; import com.arsdigita.runtime.CompoundInitializer;
import com.arsdigita.runtime.LegacyInitializer; // import com.arsdigita.runtime.LegacyInitializer;
import com.arsdigita.runtime.PDLInitializer; import com.arsdigita.runtime.PDLInitializer;
import com.arsdigita.runtime.RuntimeConfig; import com.arsdigita.runtime.RuntimeConfig;
@ -46,6 +46,6 @@ public class Initializer extends CompoundInitializer {
("ccm-simplesurvey.pdl.mf", ("ccm-simplesurvey.pdl.mf",
new NameFilter(DbHelper.getDatabaseSuffix(database), "pdl")))); new NameFilter(DbHelper.getDatabaseSuffix(database), "pdl"))));
add(new LegacyInitializer("com/arsdigita/simplesurvey/enterprise.init")); // add(new LegacyInitializer("com/arsdigita/simplesurvey/enterprise.init"));
} }
} }

View File

@ -19,6 +19,7 @@
package com.arsdigita.simplesurvey; package com.arsdigita.simplesurvey;
import com.arsdigita.domain.DomainObject; import com.arsdigita.domain.DomainObject;
import com.arsdigita.formbuilder.util.FormbuilderSetup;
import com.arsdigita.kernel.ACSObjectInstantiator; import com.arsdigita.kernel.ACSObjectInstantiator;
import com.arsdigita.kernel.Kernel; import com.arsdigita.kernel.Kernel;
import com.arsdigita.kernel.KernelExcursion; import com.arsdigita.kernel.KernelExcursion;
@ -28,10 +29,14 @@ import com.arsdigita.runtime.ScriptContext;
import com.arsdigita.web.Application; import com.arsdigita.web.Application;
import com.arsdigita.web.ApplicationSetup; import com.arsdigita.web.ApplicationSetup;
import com.arsdigita.web.ApplicationType; import com.arsdigita.web.ApplicationType;
import java.util.Arrays;
import java.util.List;
import org.apache.log4j.Logger; import org.apache.log4j.Logger;
/** /**
* Initial load (non-resurring) at install time for ccm-simplesurvey. Creates * Initial load (non-recurring) at install time for ccm-simplesurvey. Creates
* application type in database. * application type in database.
* *
* @author Justin Ross &lt;jross@redhat.com&gt; * @author Justin Ross &lt;jross@redhat.com&gt;
@ -60,6 +65,39 @@ public class Loader extends PackageLoader {
*/ */
private void setupSimpleSurveyPackage() { private void setupSimpleSurveyPackage() {
/** List of widgets used in survey application forms. Each widget is
described by application indicator, widget name (singular & plural),
model class name and model ui class name.
These are really not user or administrator configurabel and
therefore not implemented as ccm parameter. */
List widgetTypes = Arrays.asList(
Arrays.asList(
"Survey", "One line Answer", "One line Answers",
"com.arsdigita.formbuilder.PersistentTextField",
"com.arsdigita.simplesurvey.ui.widgets.OneLineWidgetForm" ),
Arrays.asList(
"Survey", "Essay Answer", "Essay Answers",
"com.arsdigita.formbuilder.PersistentTextArea",
"com.arsdigita.simplesurvey.ui.widgets.EssayWidgetForm" ),
Arrays.asList(
"Survey", "Date Answer", "Date Answers",
"com.arsdigita.formbuilder.PersistentDate",
"com.arsdigita.simplesurvey.ui.widgets.DateWidgetForm" ),
Arrays.asList(
"Survey","Multiple Choice (one or more answers)","Multiple Choices",
"com.arsdigita.formbuilder.PersistentCheckboxGroup",
"com.arsdigita.simplesurvey.ui.widgets.CheckboxEditor" ),
Arrays.asList(
"Survey", "Multiple Choice (only one answer)","Single Choices",
"com.arsdigita.formbuilder.PersistentRadioGroup",
"com.arsdigita.simplesurvey.ui.widgets.RadioEditor" ),
Arrays.asList(
"Poll", "Multiple Choice (only one answer)","Single Choices",
"com.arsdigita.formbuilder.PersistentRadioGroup",
"com.arsdigita.simplesurvey.ui.widgets.RadioEditor" )
);
ApplicationSetup setup = new ApplicationSetup(s_log); ApplicationSetup setup = new ApplicationSetup(s_log);
setup.setApplicationObjectType(SimpleSurvey.BASE_DATA_OBJECT_TYPE); setup.setApplicationObjectType(SimpleSurvey.BASE_DATA_OBJECT_TYPE);
@ -68,10 +106,11 @@ public class Loader extends PackageLoader {
// setup.setDescription("Simple Survey"); // setup.setDescription("Simple Survey");
setup.setDescription("A simple survey application."); setup.setDescription("A simple survey application.");
setup.setInstantiator(new ACSObjectInstantiator() { setup.setInstantiator(new ACSObjectInstantiator() {
public DomainObject doNewInstance(DataObject dataObject) { @Override
return new SimpleSurvey(dataObject); public DomainObject doNewInstance(DataObject dataObject) {
} return new SimpleSurvey(dataObject);
}); }
});
ApplicationType type = setup.run(); ApplicationType type = setup.run();
type.save(); type.save();
@ -84,5 +123,11 @@ public class Loader extends PackageLoader {
null); null);
app.save(); app.save();
} }
// Load the widgets types (i.e. description and class names to be
// instantiated ad runtime) used in survey forms into database.
FormbuilderSetup fbs = new FormbuilderSetup();
fbs.setup(widgetTypes, null, null);
} }
} }