Yes, I do it in getHomePage: public class StartApplication extends WebApplication {
@Override public void init() { . . . } @Override public Class<? extends Page> getHomePage() { IPackageResourceGuard packageResourceGuard = getResourceSettings().getPackageResourceGuard(); if (packageResourceGuard instanceof SecurePackageResourceGuard) { SecurePackageResourceGuard guard = (SecurePackageResourceGuard) packageResourceGuard; guard.addPattern("+*.htm"); } return Anmelden.class; } } I have to move it to Init? Am 15.11.2012 17:02, schrieb Martin Grigorov: > Hi, > > Do you add white-list patterns to SecurePackageResourceGuard somewhere > outside of MyApplication#init() ? > > The exception says that SecurePackageResourceGuard's patterns list is being > modified during the request processing. > It should be changed only at application startup. > > > On Thu, Nov 15, 2012 at 5:52 PM, Karl-Heinz Golz < > karl-heinz.g...@t-online.de> wrote: > >> >> hello, >> >> I'm using wicket 1.5.9. >> My application shows some dynamic pictures via fancybox (native without >> e.g. visural wicket). >> That works almost well, i.e. you click the small picture and you get the >> big picture via fancybox. And you can click through the show (up to 3 >> pictures) properly. >> >> But sometimes (about 1 of 10) when you click on a picture a >> ConcurrentModificationException is thrown. >> >> Below you find the exception and an extract of my coding. >> >> Maybe someone can give me a hint what's wrong. >> Many thanks in advance >> Karl-Heinz >> >> org.apache.wicket.DefaultExceptionMapper: Unexpected error occurred >> java.util.ConcurrentModificationException >> at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:819) >> at java.util.ArrayList$ListItr.previous(ArrayList.java:846) >> at >> >> org.apache.wicket.util.collections.ReverseListIterator.next(ReverseListIterator.java:51) >> at >> >> org.apache.wicket.markup.html.SecurePackageResourceGuard.acceptAbsolutePath(SecurePackageResourceGuard.java:179) >> at >> >> org.apache.wicket.markup.html.PackageResourceGuard.accept(PackageResourceGuard.java:71) >> at >> >> org.apache.wicket.request.resource.PackageResource.accept(PackageResource.java:468) >> at >> >> org.apache.wicket.request.resource.PackageResource.internalGetResourceStream(PackageResource.java:445) >> at >> >> org.apache.wicket.request.resource.PackageResource.getResourceStream(PackageResource.java:410) >> at >> >> org.apache.wicket.request.resource.PackageResource.newResourceResponse(PackageResource.java:240) >> at >> >> org.apache.wicket.request.resource.AbstractResource.respond(AbstractResource.java:497) >> at >> >> org.apache.wicket.request.handler.resource.ResourceRequestHandler.respond(ResourceRequestHandler.java:74) >> at >> >> org.apache.wicket.request.handler.resource.ResourceReferenceRequestHandler.respond(ResourceReferenceRequestHandler.java:105) >> at >> >> org.apache.wicket.request.cycle.RequestCycle$HandlerExecutor.respond(RequestCycle.java:784) >> at >> >> org.apache.wicket.request.RequestHandlerStack.execute(RequestHandlerStack.java:64) >> at >> org.apache.wicket.request.cycle.RequestCycle.execute(RequestCycle.java:255) >> at >> >> org.apache.wicket.request.cycle.RequestCycle.processRequest(RequestCycle.java:212) >> at >> >> org.apache.wicket.request.cycle.RequestCycle.processRequestAndDetach(RequestCycle.java:283) >> at >> >> org.apache.wicket.protocol.http.WicketFilter.processRequest(WicketFilter.java:188) >> at >> >> org.apache.wicket.protocol.http.WicketFilter.doFilter(WicketFilter.java:244) >> at >> >> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:243) >> at >> >> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) >> at >> >> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:225) >> at >> >> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:123) >> at >> >> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) >> at >> >> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) >> at >> >> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) >> at >> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) >> at >> >> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) >> at >> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) >> at >> >> org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1001) >> at >> >> org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:585) >> at >> >> org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoint.java:1770) >> at >> >> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110) >> at >> >> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603) >> at java.lang.Thread.run(Thread.java:722) >> >> >> >> <a wicket:id="img1big" > >> <img wicket:id="img1small" title="" alt="" /> >> </a> >> >> ------------------- >> >> Link<Object> linkImg1 = new Link<Object>("img1big") { >> private static final long serialVersionUID = 1L; >> >> @Override >> public void onClick() { >> setResponsePage(new ShowImage(fall.getImage1Big(), >> fall.getImage1ContentType(), >> fall.getImage1Title())); >> } >> }; >> add(linkImg1); >> >> Image img1 = new NonCachingImage("img1small"); >> if (fall.getImage1Small() != null) { >> img1.setImageResource(new >> ByteArrayResource(fall.getImage1ContentType(), fall.getImage1Small())); >> linkImg1.add(AttributeModifier.replace("rel", "fancyshow")); >> } else { >> img1.setImageResourceReference(new >> PackageResourceReference(StartPage.class, "images/null.png")); >> img1.add(AttributeModifier.replace("class", "hideme")); >> } >> linkImg1.add(img1); >> >> >> -------------------------------------------- >> _ShowImage.html_ >> >> <body> >> <div> >> <p><img wicket:id="imgid" alt="" /></p> >> <br /> >> <p wicket:id="imgtitle" ></p> >> </div> >> </body> >> >> ------------------- >> _ShowImage.class_ >> >> public class ShowImage extends WebPage implements Serializable { >> private static final long serialVersionUID = 1L; >> >> public ShowImage (byte[] img, String contentType, String title) { >> Image img2 = new Image("imgid", new ByteArrayResource(contentType, >> img)); >> add(img2); >> >> Label title2 = new Label("imgtitle", title); >> add(title2); >> } >> } >> >> >> >> >> --------------------------------------------------------------------- >> To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org >> For additional commands, e-mail: users-h...@wicket.apache.org >> >> > > --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@wicket.apache.org For additional commands, e-mail: users-h...@wicket.apache.org