Sorry! The actual piece containing the relative URL was somehow turned into a
link by Nabble, although I didn't check "Message is in HTML Format" box...
Oh well...
Trying again (Beware! I removed all opening and closing "<"/">" brackets
from those lines in the middle starting with "a" and ending with "/a"...)
<div class="search_div1_left_menu">
<form wicket:id="searchForm" onsubmit="return false;">
<div class="search_div1_left_option">
a href="#" onclick="displaySearchOptions()"
style="text-decoration:none"
img id="imgParametersOpen" src="img/arrow_search.gif"
border="0"/
/a
<span class="text_style">
<wicket:message key="searchOptions"/>
</span>
</div>
beboris wrote:
>
> So, here is an update.
>
> It DID fix the problem for the home page.
>
> Still, we have a bunch of "relative path" resources on other pages, which
> are not retrieved correctly, including some icons.
>
> Here is the scenario [data are straight from my debugger]
>
> =========================
> It all started with the relative path, of course...
> <wicket:panel>
> <div class="search_div1_left_menu">
> <form wicket:id="searchForm" onsubmit="return false;">
> <div class="search_div1_left_option">
> #
> img/arrow_search.gif
>
> <span class="text_style">
> <wicket:message key="searchOptions"/>
> </span>
> </div>
>
> And ended with the following stack trace, with the
> [org.apache.naming.resources.ProxyDirContext.]cacheLoad() failing to load
> the file and throwing NamingException exception for my
> "img/arrow_search.gif"
>
> Thread [http-18080-Processor22] (Suspended)
> ProxyDirContext.cacheLoad(CacheEntry) line: 1533
> ProxyDirContext.cacheLookup(String) line: 1448
> ProxyDirContext.lookup(String) line: 282
> ApplicationContext.getResourceAsStream(String) line: 531
> ApplicationContextFacade.getResourceAsStream(String) line: 184
> WebExternalResourceRequestTarget.respond(RequestCycle) line: 85
> DefaultResponseStrategy.respond(RequestCycle) line: 49
>
> DefaultWebRequestCycleProcessor(AbstractCompoundRequestCycleProcessor).respond(RequestCycle)
> line: 66
>
> WebRequestCycle(RequestCycle).doProcessEventsAndRespond(IRequestCycleProcessor)
> line: 902
> WebRequestCycle(RequestCycle).processEventsAndRespond() line: 934
> WebRequestCycle(RequestCycle).step() line: 1010
> WebRequestCycle(RequestCycle).steps() line: 1084
> WebRequestCycle(RequestCycle).request() line: 454
> WicketServlet.doGet(HttpServletRequest, HttpServletResponse) line: 219
> WicketServlet(HttpServlet).service(HttpServletRequest,
> HttpServletResponse) line: 689
> WicketServlet(HttpServlet).service(ServletRequest, ServletResponse) line:
> 802
> ApplicationFilterChain.internalDoFilter(ServletRequest, ServletResponse)
> line: 252
> ApplicationFilterChain.doFilter(ServletRequest, ServletResponse) line:
> 173
> StandardWrapperValve.invoke(Request, Response) line: 213
> StandardContextValve.invoke(Request, Response) line: 178
> StandardHostValve.invoke(Request, Response) line: 126
> ErrorReportValve.invoke(Request, Response) line: 105
> StandardEngineValve.invoke(Request, Response) line: 107
> CoyoteAdapter.service(Request, Response) line: 148
> Http11Processor.process(InputStream, OutputStream) line: 869
>
> =========
>
> protected void cacheLoad(CacheEntry entry) {
> String name = entry.name;
> // Retrieve missing info
> boolean exists = true;
> // Retrieving attributes
> if (entry.attributes == null) {
> try {
> Attributes attributes =
> dirContext.getAttributes(entry.name);
> if (!(attributes instanceof ResourceAttributes)) {
> entry.attributes =
> new ResourceAttributes(attributes);
> } else {
> entry.attributes = (ResourceAttributes) attributes;
> }
> } catch (NamingException e) {
> exists = false;
> }
> }
>
> FileDirContext claims it can't find the file with entry.name. And it's not
> surprising. Somehow, the name contains the "pictureBank", which is where
> servlet is mapped (Of course, the actual file path on the file system
> doesn't include the "/pictureBank"!!!)
>
> dirContext FileDirContext (id=8325)
> absoluteBase "C:\Dev\apache-tomcat-5.5.20\webapps\NEO-S"
> allowLinking false
> base File (id=10277)
> cached true
> cacheMaxSize 10240
> cacheTTL 5000
> caseSensitive true
> docBase "C:\Dev\apache-tomcat-5.5.20\webapps\NEO-S"
> env Hashtable<K,V> (id=10279)
> nameParser NameParserImpl (id=10280)
> sm StringManager (id=8333)
>
> entry CacheEntry (id=11850)
> accessCount 0
> attributes null
> context null
> exists true
> name "/pictureBank/img/arrow_search.gif"
> resource null
> size 1
> timestamp -1
>
> =========
>
> But down there in the stack trace I've got WicketServlet, showing me an
> expected pathTranslated for the request
> ("C:\Dev\apache-tomcat-5.5.20\webapps\NEO-S\img\arrow_search.gif"), which
> happens to be exactly the right name the file has on disk.
>
> [method = GET, protocol = HTTP/1.1, requestURL =
> http://192.168.2.93:18080/NEO-S/pictureBank/img/arrow_search.gif,
> contentType = null, contentLength = -1, contextPath = /NEO-S, pathInfo =
> /img/arrow_search.gif, requestURI =
> /NEO-S/pictureBank/img/arrow_search.gif, servletPath = /pictureBank,
> pathTranslated =
> C:\Dev\apache-tomcat-5.5.20\webapps\NEO-S\img\arrow_search.gif]
>
> There is no my code in the middle -just some wicked (oops! Sorry! Wicket)
> magic, and I have no wand... Anybody?
>
> Do you have any idea what could be causing this "change of heart"? Why
> WicketServlet correctly identified servletPath and pathTranslated
> (servletPath = /pictureBank, pathTranslated =
> C:\Dev\apache-tomcat-5.5.20\webapps\NEO-S\img\arrow_search.gif), but then
> (after the request went through WebExternalResourceRequestTarget) it was
> decided that the file path should include "/pictureBank" ???
>
> Can it be something simple that we can do to cure this kind of issues?
>
>
> beboris wrote:
>>
>> Just an FYI for those who want to know what the problem was about or
>> solution for it is. We did mount the page, and it didn't help. So, we
>> created a sample and shared it with Igor. He filed a bug and created a
>> patch (see https://issues.apache.org/jira/browse/WICKET-290). I'll keep
>> you posted whether it fixed the problem for us...
>>
>>
>> igor.vaynberg wrote:
>>>
>>> mount the page using querystringcodingstrategy that way the link will be
>>> /index.html?wicket:pagemap...
>>> -igor
>>>
>>>
>>> On 2/15/07, beboris <[EMAIL PROTECTED]> wrote:
>>>>
>>>>
>>>> Nothing happens. We stay on the same HomePage and display an error.
>>>> Unfortunately, Wicket changes URL of the page though, so relative links
>>>> stop
>>>> working... (see a code snippet below, please)
>>>>
>>>> -bob
>>>>
>>>> HomePage extends WebPage
>>>> ...
>>>> LoginForm form = new Form() {
>>>> ...
>>>> @Override
>>>> public void onSubmit() {
>>>> ... // Login logic here.
>>>> if (ok) {
>>>> setResponsePage(new FNMyPhotosWebPage());
>>>> } else {
>>>> error(""Log-in for [" + email + "] failed"");
>>>> ...
>>>>
>>>>
>>>>
>>>> igor.vaynberg wrote:
>>>> >
>>>> > what happens if there is an error? how does wicket redirect back to
>>>> that
>>>> > page? how is that back url generated?
>>>> >
>>>> > -igor
>>>> >
>>>> >
>>>> >
>>>> > On 2/15/07, beboris <[EMAIL PROTECTED]> wrote:
>>>> >>
>>>> >>
>>>> >> After 2 months of working with Wicket we almost felt like "profies"
>>>> but
>>>> >> now
>>>> >> that we have to [loosely] integrate some pieces written by others
>>>> we've
>>>> >> got
>>>> >> into one of those Wicket "gotchas" again...
>>>> >>
>>>> >> So, there is a simple home page with a simple javascript created by
>>>> >> others,
>>>> >> which we host inside our framework, but don't want to rewrite from
>>>> >> scratch...
>>>> >>
>>>> >> Let's say, this is a URL of that home page:
>>>> >>
>>>> http://mydomain.com/webappPath/wicketServletMappingPath/index.html
>>>> >>
>>>> >> The page contains DHTML which works with a bunch of relative URL-s
>>>> of
>>>> >> images
>>>> >> that are downloaded by a javascript (js/home/myscript.js), such as:
>>>> >> var imgName = "../img/home/login.jpg";
>>>> >>
>>>> >> And the page shows up just fine.
>>>> >>
>>>> >> All the page interaction with our (Wicket-based) site is limited to
>>>> one
>>>> >> simple login form that posts (via HTTP[S] POST) to our Wicket
>>>> >> implementation. If there is no error - everything works fine, and
>>>> the
>>>> >> user
>>>> >> is redirected to an authenticated area.
>>>> >>
>>>> >> However, if there is an error, wicket returns back with a different
>>>> URL
>>>> >> !!!
>>>> >>
>>>> >>
>>>> >>
>>>> http://mydomain.com/webappPath/wicketServletMappingPath/index.html/wicket:pageMapName/wicket-0
>>>> >>
>>>> >> That's it! Relative paths to resources don't work anymore... The
>>>> whole
>>>> >> page
>>>> >> stops working.
>>>> >>
>>>> >> There gotta be a simple solution to that, that doesn't require me to
>>>> >> rewrite
>>>> >> the whole home page.
>>>> >>
>>>> >> But is there? Please, help!
>>>> >>
>>>> >> Thanks,
>>>> >> Bob.
>>>> >>
>>>> >> --
>>>> >> View this message in context:
>>>> >>
>>>> http://www.nabble.com/Relative-URL-s-on-the-page-stop-working-after-HTTP-POST-tf3236431.html#a8994858
>>>> >> Sent from the Wicket - User mailing list archive at Nabble.com.
>>>> >>
>>>> >>
>>>> >>
>>>> -------------------------------------------------------------------------
>>>> >> Take Surveys. Earn Cash. Influence the Future of IT
>>>> >> Join SourceForge.net's Techsay panel and you'll get the chance to
>>>> share
>>>> >> your
>>>> >> opinions on IT & business topics through brief surveys-and earn cash
>>>> >>
>>>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>>>> >> _______________________________________________
>>>> >> Wicket-user mailing list
>>>> >> [email protected]
>>>> >> https://lists.sourceforge.net/lists/listinfo/wicket-user
>>>> >>
>>>> >
>>>> >
>>>> -------------------------------------------------------------------------
>>>> > Take Surveys. Earn Cash. Influence the Future of IT
>>>> > Join SourceForge.net's Techsay panel and you'll get the chance to
>>>> share
>>>> > your
>>>> > opinions on IT & business topics through brief surveys-and earn cash
>>>> >
>>>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>>>> > _______________________________________________
>>>> > Wicket-user mailing list
>>>> > [email protected]
>>>> > https://lists.sourceforge.net/lists/listinfo/wicket-user
>>>> >
>>>> >
>>>>
>>>> --
>>>> View this message in context:
>>>> http://www.nabble.com/Relative-URL-s-on-the-page-stop-working-after-HTTP-POST-tf3236431.html#a8996063
>>>> Sent from the Wicket - User mailing list archive at Nabble.com.
>>>>
>>>>
>>>> -------------------------------------------------------------------------
>>>> Take Surveys. Earn Cash. Influence the Future of IT
>>>> Join SourceForge.net's Techsay panel and you'll get the chance to share
>>>> your
>>>> opinions on IT & business topics through brief surveys-and earn cash
>>>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>>>> _______________________________________________
>>>> Wicket-user mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/wicket-user
>>>>
>>>
>>> -------------------------------------------------------------------------
>>> Take Surveys. Earn Cash. Influence the Future of IT
>>> Join SourceForge.net's Techsay panel and you'll get the chance to share
>>> your
>>> opinions on IT & business topics through brief surveys-and earn cash
>>> http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
>>> _______________________________________________
>>> Wicket-user mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/wicket-user
>>>
>>>
>>
>>
>
>
--
View this message in context:
http://www.nabble.com/Relative-URL-s-on-the-page-stop-working-after-HTTP-POST-tf3236431.html#a9023724
Sent from the Wicket - User mailing list archive at Nabble.com.
-------------------------------------------------------------------------
Take Surveys. Earn Cash. Influence the Future of IT
Join SourceForge.net's Techsay panel and you'll get the chance to share your
opinions on IT & business topics through brief surveys-and earn cash
http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV
_______________________________________________
Wicket-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/wicket-user