Hi!
I just upgraded from 1.3.1 to 1.4-m1 and I received the strangest of errors.
Has anyone had the same experience below? This occurs only with the
ternary operator, probably because both elements get initialized at
runtime:
public class AnyPage extends WebPage {
public AnyPage() {
// I wanted to use a ternary operator to choose between rendering
a listchoice or a multiplelistchoice.
// This worked in 1.3.1 but not in 1.4-m1 anymore. The JVM used is
1.6.0_04 with jetty 6.1.0
// ....
Object o = false
? new ListMultipleChoice("",
new Model(), Collections.EMPTY_LIST, (IChoiceRenderer) null)
: new ListChoice("",
new Model(), Collections.EMPTY_LIST, (IChoiceRenderer)
null).setNullValid(true);
// ....
}
}
Throws a nasty exception:
2008-05-17 16:57:23,531 67447 [btpool0-8] ERROR RequestCycle - Can't
instantiate page using constructor public wicket.quickstart.AnyPage()
org.apache.wicket.WicketRuntimeException: Can't instantiate page using
constructor public wicket.quickstart.AnyPage()
at
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:168)
at
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:58)
at
org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.newPage(BookmarkablePageRequestTarget.java:262)
at
org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.getPage(BookmarkablePageRequestTarget.java:283)
at
org.apache.wicket.request.target.component.BookmarkablePageRequestTarget.processEvents(BookmarkablePageRequestTarget.java:210)
at
org.apache.wicket.request.AbstractRequestCycleProcessor.processEvents(AbstractRequestCycleProcessor.java:91)
at
org.apache.wicket.RequestCycle.processEventsAndRespond(RequestCycle.java:1174)
at org.apache.wicket.RequestCycle.step(RequestCycle.java:1251)
at org.apache.wicket.RequestCycle.steps(RequestCycle.java:1352)
at org.apache.wicket.RequestCycle.request(RequestCycle.java:499)
at
org.apache.wicket.protocol.http.WicketFilter.doGet(WicketFilter.java:375)
at
org.apache.wicket.protocol.http.WicketServlet.doGet(WicketServlet.java:124)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
at
wicket.quickstart.SessionLeakWorkaroundServlet.service(SessionLeakWorkaround.java:57)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at
org.mortbay.jetty.servlet.ServletHolder.handle(ServletHolder.java:491)
at
org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:367)
at
org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:185)
at
org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:181)
at
org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:689)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:391)
at
org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:139)
at org.mortbay.jetty.Server.handle(Server.java:285)
at
org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:457)
at
org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:751)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:500)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:209)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:357)
at
org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:217)
at
org.mortbay.thread.BoundedThreadPool$PoolThread.run(BoundedThreadPool.java:442)
Caused by: java.lang.reflect.InvocationTargetException
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown
Source)
at java.lang.reflect.Constructor.newInstance(Unknown Source)
at
org.apache.wicket.session.DefaultPageFactory.newPage(DefaultPageFactory.java:149)
... 29 more
Caused by: java.lang.IllegalAccessError: tried to access class
org.apache.wicket.markup.html.form.AbstractChoice from class
wicket.quickstart.AnyPage
at wicket.quickstart.AnyPage.<init>(AnyPage.java:69)
... 34 more
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]