You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@isis.apache.org by "Dan Haywood (JIRA)" <ji...@apache.org> on 2014/07/16 19:32:05 UTC
[jira] [Comment Edited] (ISIS-815) Internationalization of Wicket
UI elements (edit, ok, cancel, logout, about)
[ https://issues.apache.org/jira/browse/ISIS-815?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14063760#comment-14063760 ]
Dan Haywood edited comment on ISIS-815 at 7/16/14 5:31 PM:
-----------------------------------------------------------
Hi Martin,
Just double checked, is definitely an issue.
Possibly a bit large for an example, but the todo app demonstrates the issue.
to set up:
- pull down from snapshot (eg https://github.com/apache/isis/tree/27e2596c475ee380c78c3a17e9cd8cb33f968f6e)
- mvn clean install // to build everything, then
- cd example/application/quickstart_wicket_restful_jdo
cd webapp
mvn jetty:run
... should run fine, and should be able to navigate to http://localhost:8080/quickstart_wicket_restful_jdo-webapp/wicket (can login using sven/pass, though no need)
Now, edit IsisWicketApplication, change:
@Override
protected void internalInit() {
setResourceSettings(new IsisResourceSettings(this));
super.internalInit();
}
@Override
protected void init() {
...
}
to:
@Override
protected void internalInit() {
super.internalInit();
}
@Override
protected void init() {
setResourceSettings(new IsisResourceSettings(this));
...
}
when run the app and hit the same URL, hit a redirect loop.
The stack trace I got is below; I think the redirect loop is because I'm failing to find an i18n resource for something (the breadcrumb panel, by the looks of things) that is rendered on our error page.
18:22:52,846 [RequestCycleExtra 811338959@qtp-1904504032-5 WARN ] Handling the following exception
java.util.MissingResourceException: Unable to find property: 'noMatches' for component: theme:breadcrumbs:breadcrumbs [class=com.vaynberg.wicket.select2.Select2Choice]. Locale: null, style: null
at org.apache.wicket.Localizer.getString(Localizer.java:237)
at org.apache.wicket.Localizer.getString(Localizer.java:130)
at org.apache.wicket.Component.getString(Component.java:1892)
at org.apache.wicket.Component.getString(Component.java:1879)
at com.vaynberg.wicket.select2.AbstractSelect2Choice.onInitialize(AbstractSelect2Choice.java:175)
at org.apache.wicket.Component.fireInitialize(Component.java:876)
at org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:961)
at org.apache.wicket.MarkupContainer.addedComponent(MarkupContainer.java:938)
at org.apache.wicket.MarkupContainer.add(MarkupContainer.java:174)
at org.apache.wicket.MarkupContainer.addOrReplace(MarkupContainer.java:205)
at org.apache.isis.viewer.wicket.ui.components.widgets.breadcrumbs.BreadcrumbPanel.onInitialize(BreadcrumbPanel.java:121)
at org.apache.wicket.Component.fireInitialize(Component.java:876)
at org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:967)
at org.apache.wicket.MarkupContainer$3.component(MarkupContainer.java:963)
at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:144)
at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:162)
at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:123)
at org.apache.wicket.util.visit.Visits.visitChildren(Visits.java:192)
at org.apache.wicket.MarkupContainer.visitChildren(MarkupContainer.java:875)
at org.apache.wicket.MarkupContainer.internalInitialize(MarkupContainer.java:962)
at org.apache.wicket.Page.internalPrepareForRender(Page.java:238)
at org.apache.wicket.Component.render(Component.java:2317)
at org.apache.wicket.Page.renderPage(Page.java:1024)
at org.apache.wicket.request.handler.render.WebPageRenderer.renderPage(WebPageRenderer.java:122)
at org.apache.wicket.request.handler.render.WebPageRenderer.respond(WebPageRenderer.java:221)
at org.apache.wicket.core.request.handler.RenderPageRequestHandler.respond(RenderPageRequestHandler.java:175)
at org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:862)
at org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64)
at org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:261)
at org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:218)
at org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:289)
at org.apache.wicket.protocol.http.WicketFilter.processRequestCycle(WicketFilter.java:259)
at org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:201)
at org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:282)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.apache.isis.core.webapp.diagnostics.IsisLogOnExceptionFilter.doFilter(IsisLogOnExceptionFilter.java:52)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.apache.shiro.web.servlet.AbstractShiroFilter.executeChain(AbstractShiroFilter.java:449)
at org.apache.shiro.web.servlet.AbstractShiroFilter$1.call(AbstractShiroFilter.java:365)
at org.apache.shiro.subject.support.SubjectCallable.doCall(SubjectCallable.java:90)
at org.apache.shiro.subject.support.SubjectCallable.call(SubjectCallable.java:83)
at org.apache.shiro.subject.support.DelegatingSubject.execute(DelegatingSubject.java:383)
at org.apache.shiro.web.servlet.AbstractShiroFilter.doFilterInternal(AbstractShiroFilter.java:362)
at org.apache.shiro.web.servlet.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:125)
at org.mortbay.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1212)
at org.mortbay.jetty.servlet.ServletHandler.handle(ServletHandler.java:399)
at org.mortbay.jetty.security.SecurityHandler.handle(SecurityHandler.java:216)
at org.mortbay.jetty.servlet.SessionHandler.handle(SessionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(ContextHandler.java:766)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebAppContext.java:450)
at org.mortbay.jetty.handler.HandlerWrapper.handle(HandlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(HttpConnection.java:542)
at org.mortbay.jetty.HttpConnection$RequestHandler.headerComplete(HttpConnection.java:928)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser.java:549)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpParser.java:212)
at org.mortbay.jetty.HttpConnection.handle(HttpConnection.java:404)
at org.mortbay.jetty.bio.SocketConnector$Connection.run(SocketConnector.java:228)
at org.mortbay.thread.QueuedThreadPool$PoolThread.run(QueuedThreadPool.java:582)
was (Author: danhaywood):
Hi Martin,
Just double checked, is definitely an issue.
Possibly a bit large for an example, but the todo app demonstrates the issue.
to set up:
- pull down from snapshot (eg https://github.com/apache/isis/tree/27e2596c475ee380c78c3a17e9cd8cb33f968f6e)
- mvn clean install // to build everything, then
- cd example/application/quickstart_wicket_restful_jdo
cd webapp
mvn jetty:run
... should run fine, and should be able to navigate to http://localhost:8080/quickstart_wicket_restful_jdo-webapp/wicket (can login using sven/pass, though no need)
Now, edit IsisWicketApplication, change:
@Override
protected void internalInit() {
setResourceSettings(new IsisResourceSettings(this));
super.internalInit();
}
@Override
protected void init() {
...
}
to:
@Override
protected void internalInit() {
super.internalInit();
}
@Override
protected void init() {
setResourceSettings(new IsisResourceSettings(this));
...
}
when run the app and hit the same URL, hit a redirect loop.
> Internationalization of Wicket UI elements (edit, ok, cancel, logout, about)
> ----------------------------------------------------------------------------
>
> Key: ISIS-815
> URL: https://issues.apache.org/jira/browse/ISIS-815
> Project: Isis
> Issue Type: Improvement
> Components: Viewer: Wicket
> Affects Versions: viewer-wicket-1.5.0
> Reporter: Dan Haywood
> Assignee: Dan Haywood
> Priority: Minor
> Fix For: viewer-wicket-1.6.0
>
>
> Using Wicket's built-in i18n capabilities, but tweaked so that application-scoped properties override page-scope properties (rather than other way around)
--
This message was sent by Atlassian JIRA
(v6.2#6252)