Hi All
I am using a wicket-bootstrap 0.8.2-SNAPSHOT, and wicket 6.7.0. I am
trying to create a from and add the components using a ControlGroup. I
can add the components to the matching html OK, but I get the following
error when the page renders.
12:45:25,905 ERROR [org.apache.wicket.serialize.java.JavaSerializer]
(http--127.0.0.1-8080-1) Error serializing object class
com.copperarrow.dvcs.web.pages.AddRepository [object=[Page class =
com.copperarrow.dvcs.web.pages.AddRepository, id = 1, render count =
1]]:
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream$ObjectCheckException:
The object type is not Serializable!
A problem occurred while checking object with type:
de.agilecoders.wicket.core.markup.html.bootstrap.form.ControlGroup$FeedbackMessageToCssClassNameTransformer
Field hierarchy is:
1 [class=com.copperarrow.dvcs.web.pages.AddRepository, path=1]
private java.lang.Object org.apache.wicket.MarkupContainer.children
[class=[Ljava.lang.Object;]
java.lang.Object org.apache.wicket.Component.data[8]
[class=de.agilecoders.wicket.core.markup.html.bootstrap.form.BootstrapForm,
path=1:form]
private java.lang.Object
org.apache.wicket.MarkupContainer.children [class=[Ljava.lang.Object;]
private java.lang.Object
org.apache.wicket.MarkupContainer.children[0]
[class=de.agilecoders.wicket.core.markup.html.bootstrap.form.ControlGroup,
path=1:form:reponame-controlgroup]
private final com.google.common.base.Function
de.agilecoders.wicket.core.markup.html.bootstrap.form.ControlGroup.feedbackMessageToCssClassName
[class=de.agilecoders.wicket.core.markup.html.bootstrap.form.ControlGroup$FeedbackMessageToCssClassNameTransformer]
<----- field that is causing the problem
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.internalCheck(CheckingObjectOutputStream.java:387)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.check(CheckingObjectOutputStream.java:361)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.checkFields(CheckingObjectOutputStream.java:645)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.internalCheck(CheckingObjectOutputStream.java:569)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.check(CheckingObjectOutputStream.java:361)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.internalCheck(CheckingObjectOutputStream.java:432)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.check(CheckingObjectOutputStream.java:361)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.checkFields(CheckingObjectOutputStream.java:645)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.internalCheck(CheckingObjectOutputStream.java:569)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.check(CheckingObjectOutputStream.java:361)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.internalCheck(CheckingObjectOutputStream.java:432)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.check(CheckingObjectOutputStream.java:361)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.checkFields(CheckingObjectOutputStream.java:645)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.internalCheck(CheckingObjectOutputStream.java:569)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.check(CheckingObjectOutputStream.java:361)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.core.util.objects.checker.CheckingObjectOutputStream.writeObjectOverride(CheckingObjectOutputStream.java:713)
[wicket-core-6.7.0.jar:6.7.0]
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:342)
[rt.jar:1.7.0_21]
at
org.apache.wicket.serialize.java.JavaSerializer$SerializationCheckerObjectOutputStream.writeObjectOverride(JavaSerializer.java:268)
[wicket-core-6.7.0.jar:6.7.0]
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:342)
[rt.jar:1.7.0_21]
at
org.apache.wicket.serialize.java.JavaSerializer.serialize(JavaSerializer.java:78)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.pageStore.DefaultPageStore.serializePage(DefaultPageStore.java:376)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.pageStore.DefaultPageStore.storePage(DefaultPageStore.java:150)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.page.PageStoreManager$PersistentRequestAdapter.storeTouchedPages(PageStoreManager.java:383)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.page.RequestAdapter.commitRequest(RequestAdapter.java:181)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.page.AbstractPageManager.commitRequest(AbstractPageManager.java:98)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.page.PageManagerDecorator.commitRequest(PageManagerDecorator.java:73)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.page.PageAccessSynchronizer$2.commitRequest(PageAccessSynchronizer.java:281)
[wicket-core-6.7.0.jar:6.7.0]
at org.apache.wicket.Application$2.onDetach(Application.java:1628)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.request.cycle.RequestCycleListenerCollection$3.notify(RequestCycleListenerCollection.java:105)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.request.cycle.RequestCycleListenerCollection$3.notify(RequestCycleListenerCollection.java:101)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.util.listener.ListenerCollection$1.notify(ListenerCollection.java:120)
[wicket-util-6.7.0.jar:6.7.0]
at
org.apache.wicket.util.listener.ListenerCollection.reversedNotify(ListenerCollection.java:144)
[wicket-util-6.7.0.jar:6.7.0]
at
org.apache.wicket.util.listener.ListenerCollection.reversedNotifyIgnoringExceptions(ListenerCollection.java:113)
[wicket-util-6.7.0.jar:6.7.0]
at
org.apache.wicket.request.cycle.RequestCycleListenerCollection.onDetach(RequestCycleListenerCollection.java:100)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.request.cycle.RequestCycle.onDetach(RequestCycle.java:633)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.request.cycle.RequestCycle.detach(RequestCycle.java:582)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:286)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
[wicket-core-6.7.0.jar:6.7.0]
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:280)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:248)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:275)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:161)
[jbossweb-7.0.13.Final.jar:]
at
org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)
[jboss-as-jpa-7.1.1.Final.jar:7.1.1.Final]
at
org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)
[jboss-as-web-7.1.1.Final.jar:7.1.1.Final]
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:877)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:671)
[jbossweb-7.0.13.Final.jar:]
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:930)
[jbossweb-7.0.13.Final.jar:]
at java.lang.Thread.run(Thread.java:722) [rt.jar:1.7.0_21]
Caused by: java.io.NotSerializableException:
de.agilecoders.wicket.core.markup.html.bootstrap.form.ControlGroup$FeedbackMessageToCssClassNameTransformer
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1180)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1362)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1170)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1362)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1170)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1528)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1493)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeOrdinaryObject(ObjectOutputStream.java:1416)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1174)
[rt.jar:1.7.0_21]
at
java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:346)
[rt.jar:1.7.0_21]
at
org.apache.wicket.serialize.java.JavaSerializer$SerializationCheckerObjectOutputStream.writeObjectOverride(JavaSerializer.java:260)
[wicket-core-6.7.0.jar:6.7.0]
... 36 more
12:45:26,085 WARN [org.apache.wicket.pageStore.DefaultPageStore]
(http--127.0.0.1-8080-1) Page [Page class =
com.copperarrow.dvcs.web.pages.AddRepository, id = 1, render count = 1]
cannot be serialized. See previous logs for possible reasons.
Here is the html snippet of the page:
<div class="well">
<form wicket:id="form" class="form-horizontal">
<fieldset>
<legend>Add Repository</legend>
<div wicket:id="reponame-controlgroup"
class="control-group">
<input wicket:id="repoName"
type="text">
<i class="icon-asterisk icon-large
red"></i>
</div>
<div wicket:id="desc-controlgroup"
class="control-group">
<input wicket:id="desc" type="text">
</div>
<div wicket:id="location-controlgroup"
class="control-group">
<input wicket:id="location"
type="text">
</div>
<div wicket:id="repoType-controlgroup"
class="control-group">
<select wicket:id="repoType"></select>
<i class="icon-asterisk icon-large
red"></i>
</div>
</fieldset>
<div class="form-actions">
<button wicket:id="submit-button"
type="submit">Add Repository</button>
</div>
</form>
<div wicket:id="notification"></div>
</div>
And the associated java code:
BootstrapForm<Void> form = new BootstrapForm<Void>("form") {
@Override
protected void onSubmit() {
System.out.println("submit form");
System.out.println("repository name " +
repoNameTField.getDefaultModelObjectAsString());
}
@Override
protected void onError() {
System.out.println("error");
notificationPanel.error("Error");
}
};
add(form);
ControlGroup controlGroupRepoName = new
ControlGroup("reponame-controlgroup", Model.of("Repository name"));
repoNameTField = new TextField<String>("repoName", new
Model<String>());
repoNameTField.setRequired(true);
controlGroupRepoName.add(repoNameTField);
ControlGroup controlGroupDescription = new
ControlGroup("desc-controlgroup", Model.of("Repository Description"));
descriptionTField = new TextField<String>("desc", new
Model<String>());
controlGroupDescription.add(descriptionTField);
ControlGroup controlGroupLocation = new
ControlGroup("location-controlgroup", Model.of("Repository Location"));
locationTField = new TextField<String>("location", new
Model<String>());
controlGroupLocation.add(locationTField);
ControlGroup controlGroupRepoType = new
ControlGroup("repoType-controlgroup", Model.of("Repository Type"));
repositoryTypeDropDownChoice = new
DropDownChoice<RepositoryType>("repoType",
Arrays.asList(RepositoryType.values()), new
EnumChoiceRenderer<RepositoryType>(this));
repositoryTypeDropDownChoice.setRequired(true);
controlGroupRepoType.add(repositoryTypeDropDownChoice);
form.add(controlGroupRepoName);
form.add(controlGroupDescription);
form.add(controlGroupLocation);
form.add(controlGroupRepoType);
form.add(new DefaultBootstrapButton("submit-button",
Model.of("Create Repository"))
.add(new ButtonBehavior(Buttons.Type.Primary))
.add(new LoadingBehavior(Model.of("Creating
Repository"))));
notificationPanel = new NotificationPanel("notification", new
ContainerFeedbackMessageFilter(form));
add(notificationPanel);
Any ideas, suggestions are most helpful.
Thanks
David
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org
For additional commands, e-mail: users-h...@wicket.apache.org