You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@wicket.apache.org by "Juergen Donnerstag (JIRA)" <ji...@apache.org> on 2010/08/27 08:46:53 UTC

[jira] Commented: (WICKET-2826) Wicket fails to read html markup from jar after updating and redeploying in jetty

    [ https://issues.apache.org/jira/browse/WICKET-2826?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12903265#action_12903265 ] 

Juergen Donnerstag commented on WICKET-2826:
--------------------------------------------

There is one welknown issue. If the page has been loaded once, all associated markup files (in case of inheritance more than one file) are cached. Wicket will not recognize if you added a new markup for that page, since the cache already returns true and ModificationWatcher doesn't trigger because it's new and not yet in his list of markup file to watch. What that means: in doubt clear the markup cache (e.g. via jmx or Debug Inspector)

> Wicket fails to read html markup from jar after updating and redeploying in jetty
> ---------------------------------------------------------------------------------
>
>                 Key: WICKET-2826
>                 URL: https://issues.apache.org/jira/browse/WICKET-2826
>             Project: Wicket
>          Issue Type: Bug
>          Components: wicket
>    Affects Versions: 1.4.7
>         Environment: Linux, jetty 6 using context deployer
>            Reporter: Adrian Sandor
>            Assignee: Igor Vaynberg
>             Fix For: 1.4.11
>
>
> I wrote a web application and packaged the main code and html markup files into a jar. I deployed it in jetty using the "extracted war" folder structure and a context descriptor. The application worked fine.
> Then I made a minor change in an html file, rebuilt the jar, copied it over the old one in jetty and touched the descriptor to reload the context. Then when trying to access the application in the browser, I got errors like:
> org.apache.wicket.markup.MarkupCache - Unable to find markup from jar:file:/path/to/jar!/path/to/html 
> org.apache.wicket.util.resource.ResourceStreamNotFoundException: Resource jar:file:/path/to/jar!/path/to/html could not be opened
>         at org.apache.wicket.util.resource.UrlResourceStream.getInputStream(UrlResourceStream.java:179)                                                      
>         at org.apache.wicket.markup.MarkupResourceStream.getInputStream(MarkupResourceStream.java:130)                                                       
>         at org.apache.wicket.markup.MarkupParser.parse(MarkupParser.java:265)                                                                                
>         at org.apache.wicket.markup.loader.SimpleMarkupLoader.loadMarkup(SimpleMarkupLoader.java:52)                                                         
>         at org.apache.wicket.markup.loader.InheritedMarkupMarkupLoader.loadMarkup(InheritedMarkupMarkupLoader.java:62)                                       
>         at org.apache.wicket.markup.loader.DefaultMarkupLoader.loadMarkup(DefaultMarkupLoader.java:55)                                                       
>         at org.apache.wicket.markup.MarkupCache.loadMarkup(MarkupCache.java:464)                                                                             
>         at org.apache.wicket.markup.MarkupCache.loadMarkupAndWatchForChanges(MarkupCache.java:559)                                                           
>         at org.apache.wicket.markup.MarkupCache.getMarkup(MarkupCache.java:325)                                                                              
>         at org.apache.wicket.markup.MarkupCache.getMarkupStream(MarkupCache.java:216)                                                                        
>         at org.apache.wicket.MarkupContainer.getAssociatedMarkupStream(MarkupContainer.java:351)                                                             
>         at org.apache.wicket.Page.onRender(Page.java:1558)
> [...]
> Caused by: java.io.FileNotFoundException: JAR entry path/to/html not found in /path/to/jar
> [...]
> org.apache.wicket.markup.MarkupNotFoundException: Markup of type 'html' for component 'page.class.name' not found. [...]
>         at org.apache.wicket.markup.MarkupCache.getMarkupStream(MarkupCache.java:227)
>         at org.apache.wicket.MarkupContainer.getAssociatedMarkupStream(MarkupContainer.java:351)
>         at org.apache.wicket.Page.onRender(Page.java:1558)
> [...]
> If I restart jetty, with no other change, everything works fine.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.