I have a JSP page that contains a scriplet where I instantiate an object. I would like to pass that object to the JSP tag without using any cache.
For example I would
<jsp:useBean id="myObject" class="java.lang.Object" scope="page" />
<wf:my-tag obj="${myObject}" />
Its not encouraged to use Scriptlets in JSP page. It kills the purpose of a template language.
The original syntax was to reuse '<%= %>'
So
<wf:my-tag obj="<%= myObject %>" />
See this part of the Sun Tag Library Tutorial for an example
A slightly different question that I looked for here: "How do you pass an object to a tag file?"
Answer: Use the "type" attribute of the attribute directive:
<%@ attribute name="field"
required="true"
type="com.mycompany.MyClass" %>
The type defaults to java.lang.String, so without it you'll get an error if you try to access object fields saying that it can't find the field from type String.
For me expression language works only if I make that variable accessible, by putting it for example in page context.
<% Object myObject = new Object();
pageContext.setAttribute("myObject", myObject);
%>
<wf:my-tag obj="${myObject}" />
Otherwise tas receives null.
And <wf:my-tag obj="<%= myObject %>" />
works with no additional effort. Also <%=%> gives jsp compile-time type validation, while El is validated only in runtime.