From: Rudolf M. <rud...@gm...> - 2010-04-13 09:47:59
|
Hello! [Sebastian Öhrn], On 12/04/10 17:36: [..] > - help avoid hard coding links in the application (hard coded links don't scale very well, should I for example want to change showPost.jsp to just post.jsp in a large site) Well, Makumba here doesn't follow the Model 2 (e.g. http://en.wikipedia.org/wiki/Model_2) completely, as we don't have a support for navigation in the controller. E.g. Apache Struts has this, there, your form action is not a specific page, but (I think) a servlet that does the needed operation, and also knows which page to present afterwards. For Makumba, we claim it a conscious choice to not have that, and instead, rather leave (for the programmer surely more readable) direct links. > - help making "prettier" links (for example (mysite.com/posts/1 instead of mysite.com/showPost.jsp?id=1, or worse ?id=4lup9fn like my site looks right now. This is good for usability and SEO-purposes) Something like this can easily be done at several levels. The most generic one would be to have this in your Apache configuration via redirects/rewrites. That doesn't scale well maybe, and requires administration skills. Another option would be a dedicated servlet, that doesn't even need to be specific to Makumba. Basically, this could work as follows: - Define the redirect rules in e.g. a properties file, i.e. having mappings mysite.com/posts/=mysite.com/showPost.jsp?id= - then the servlet is mapped before anything else, and can check whether the requested URL meets any of the defined rules. -- if not, it just doesn't do anything... -- if yes, it can forward the request to the defined page. - maybe it is also possible to make a generic default rule, so that a URL of the kind mysite.com/xxx/yyy would always translate to mysite.com/showXXX.jsp?id=yyy greetings rudi |