Posts

Showing posts with the label Jsp

Access Java / Servlet / JSP / JSTL / EL Variables In JavaScript

Answer : You need to realize that Java/JSP is merely a HTML/CSS/JS code producer. So all you need to do is to just let JSP print the Java variable as if it is a JavaScript variable and that the generated HTML/JS code output is syntactically valid. Provided that the Java variable is available in the EL scope by ${foo} , here are several examples how to print it: <script>var foo = '${foo}';</script> <script>someFunction('${foo}');</script> <div onclick="someFunction('${foo}')">...</div> Imagine that the Java variable has the value "bar" , then JSP will ultimately generate this HTML which you can verify by rightclick, View Source in the webbrowser: <script>var foo = 'bar';</script> <script>someFunction('bar');</script> <div onclick="someFunction('bar')">...</div> Do note that those singlequotes are thus mandatory in ord...

Are Session And SessionScope The Same In JSP EL?

Answer : With expression language (EL), the scope items are value maps of attributes in the objects that they refer to. For instance, the requestScope is a map representation of values in the request object. This is explained in pretty clear detail on this page: Java Servlet and JSP. If you read through the EL sections, you'll notice a point about request vs request scope here: The requestScope is NOT request object. I would recommend reading through this page to get a better understanding of servlet/jsp in general. As far as how the ActionContext relates to these items, it is really a wrapper used by struts to encapsulate the servlet. You can read more specifics about it here: Accessing application, session, request objects. There have been some references to implicit values given here, but I feel like just saying it's implicit doesn't really explain much. When you are using EL to access servlet variables, you can explicitly declare which scope you want to referen...

Alternatives To JSP For Spring MVC View Layer

Answer : I recently discovered Thymeleaf. It looks to be a complete replacement for JSPs and has integration with Spring MVC. The template approach looks more like HTML and may be more palatable to your UI designers. They have a small write-up that compares the two solutions side-by-side. In the standard Java EE API, the only alternative to JSP is Facelets. As far now (2010) JSF is the only MVC framework which natively supports Facelets. Spring MVC supports out of the box only JSP, but it has a configurable view resolver which allows you to use Facelets anyway. Other candiates are 3rd party templating frameworks such as Velocity, Freemarker, and Thymeleaf which can be configured as a view technology for Spring MVC. Spring documentation has integration examples with Velocity and Freemarker. I recently started going with plain HTML and jQuery for presentation with Spring MVC only creating a JSON view. So far it's going quite well and even though I have to do the javascri...