Sven, I'm using your solution. It's smaller and more elegant.
2008/6/19 Sven Homburg <[EMAIL PROTECTED]>: > i fiddle around with regexpr to avoid the getAbsoluteRootPath( > HttpServletRequest request) construct > here is the result: > > public String getURL() > { > Link link = linkFactory.createPageLink("Start", false, "username", > "password"); > String requestURL = > globals.getHTTPServletRequest().getRequestURL().toString(); > return requestURL.replaceAll("[^\\/]+$", "") + link.toURI(); > } > > 2008/6/19 Sven Homburg <[EMAIL PROTECTED]>: > >> fernando, >> >> sorry, i dont thought that the url from getRequestURL may be not the base >> url >> >> >> >> 2008/6/19 Sven Homburg <[EMAIL PROTECTED]>: >> >>> Fernando, >>> >>> do you think you are coding better then the guys from Sun ? >>> why dont you use the HTTPServletRequest method "getRequestURL()" ? >>> >>> Jabbar, >>> if you build the link via the LinkFactory instead the ComponentResource >>> the result is that what you want: >>> >>> /** >>> * t5components start page >>> */ >>> public class Start >>> { >>> @Inject >>> private RequestGlobals globals; >>> >>> @Inject >>> private LinkFactory linkFactory; >>> >>> public String getURL1() >>> { >>> Link link = linkFactory.createPageLink("Start", false, "username", >>> "password"); >>> return >>> globals.getHTTPServletRequest().getRequestURL().append(link.toURI()).toString(); >>> } >>> } >>> >>> >>> >>> 2008/6/19 Fernando Padilla <[EMAIL PROTECTED]>: >>> >>>> We use something like this to construct the baseUrl from a request. So >>>> it will either be to the root of the server, or to the root of the context >>>> path. So I usually do: >>>> >>>> >>>> getAbsoluteRootPath( request ) + link.toAbsoluteURI(); >>>> >>>> >>>> >>>> >>>> >>>> public static String getAbsoluteContextPath( HttpServletRequest >>>> request ) { >>>> return getAbsoluteRootPath( request ) + >>>> request.getContextPath(); >>>> } >>>> >>>> public static String getAbsoluteRootPath( HttpServletRequest >>>> request ) { >>>> StringBuilder sb = new StringBuilder(); >>>> String scheme = request.getScheme(); >>>> int port = request.getServerPort(); >>>> sb.append( scheme ); >>>> sb.append( "://" ); >>>> sb.append( request.getServerName() ); >>>> if ( ! ( ( scheme.equals( "http" ) && port == 80 ) || ( >>>> scheme.equals( "https" ) && port == 443 ) ) ) { >>>> sb.append( ":" + port ); >>>> } >>>> return sb.toString(); >>>> >>>> } >>>> >>>> >>>> >>>> Jabbar wrote: >>>> >>>>> Sven, >>>>> >>>>> I got the following >>>>> >>>>> url is >>>>> http://localhost:8080/emaildetails.formregister/username/password >>>>> >>>>> Its actually showing the request url as well as the page and context >>>>> parameters we have specified using createPageLink. It think with a bit >>>>> of string manipulation I can get the result I want. There ought to be >>>>> a more elegant way to do this though... >>>>> >>>>> Thanks for your help >>>>> >>>>> >>>>> 2008/6/19 Sven Homburg <[EMAIL PROTECTED]>: >>>>> >>>>>> sorry, i went wrong >>>>>> use : >>>>>> >>>>>> requestGlobals.getHTTPServletRequest().getRequestURL().toString() + >>>>>> link.toURI(); >>>>>> >>>>>> 2008/6/19 Jabbar <[EMAIL PROTECTED]>: >>>>>> >>>>>> Hello Sven, >>>>>>> >>>>>>> I got >>>>>>> >>>>>>> "url is /register/username/password" >>>>>>> >>>>>>> >>>>>>> >>>>>>> >>>>>>> 2008/6/19 Sven Homburg <[EMAIL PROTECTED]>: >>>>>>> >>>>>>>> try >>>>>>>> >>>>>>>> Link link = resources.createPageLink("Register", false, p.toArray()); >>>>>>>> System.err.println(link.toAbsoluteURI()) >>>>>>>> >>>>>>>> 2008/6/19 Jabbar <[EMAIL PROTECTED]>: >>>>>>>> >>>>>>>> Hello all, >>>>>>>>> >>>>>>>>> I'm trying to create a url I can embed in an email using the >>>>>>>>> following >>>>>>>>> >>>>>>>>> List<String> p = new ArrayList<String>(); >>>>>>>>> p.add(emailAddress); >>>>>>>>> p.add(password); >>>>>>>>> Link link = resources.createPageLink("Register", >>>>>>>>> false, >>>>>>>>> p.toArray()); >>>>>>>>> //emailVerifier.sendVerification(user, >>>>>>>>> requestGlobals.getHTTPServletRequest().getPathInfo() +link.toURI()); >>>>>>>>> System.out.println("url is >>>>>>>>> "+requestGlobals.getHTTPServletRequest().getPathInfo() >>>>>>>>> +"/"+link.toURI()); >>>>>>>>> >>>>>>>>> the value of the System.out.println is >>>>>>>>> "url is null/register/username/password" >>>>>>>>> >>>>>>>>> How do I get the name and port of the web server? >>>>>>>>> >>>>>>>>> -- >>>>>>>>> Thanks >>>>>>>>> >>>>>>>>> A Jabbar Azam >>>>>>>>> >>>>>>>>> >>>>>>>>> --------------------------------------------------------------------- >>>>>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>>>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>> -- >>>>>>>> with regards >>>>>>>> Sven Homburg >>>>>>>> http://tapestry5-components.googlecode.com >>>>>>>> http://chenillekit.googlecode.com >>>>>>>> >>>>>>>> >>>>>>> >>>>>>> -- >>>>>>> Thanks >>>>>>> >>>>>>> A Jabbar Azam >>>>>>> >>>>>>> --------------------------------------------------------------------- >>>>>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>>>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>>>>> >>>>>>> >>>>>>> >>>>>> -- >>>>>> with regards >>>>>> Sven Homburg >>>>>> http://tapestry5-components.googlecode.com >>>>>> http://chenillekit.googlecode.com >>>>>> >>>>>> >>>>> >>>>> >>>>> >>>> --------------------------------------------------------------------- >>>> To unsubscribe, e-mail: [EMAIL PROTECTED] >>>> For additional commands, e-mail: [EMAIL PROTECTED] >>>> >>>> >>> >>> >>> -- >>> with regards >>> Sven Homburg >>> http://tapestry5-components.googlecode.com >>> http://chenillekit.googlecode.com >>> >> >> >> >> -- >> with regards >> Sven Homburg >> http://tapestry5-components.googlecode.com >> http://chenillekit.googlecode.com >> > > > > -- > with regards > Sven Homburg > http://tapestry5-components.googlecode.com > http://chenillekit.googlecode.com > -- Thanks A Jabbar Azam --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]