هل من الممكن الوصول إلى متغير Struts2 في JSP Scriptlet؟
سؤال
هل من الممكن الوصول إلى متغير Struts2 في JSP Scriptlet؟
إذا كان لدي متغير struts2 مثل
<s:set var="test" value="%{'true'}"/>
هل يمكنني استخدام "اختبار" متغير في JSP Scriptlet؟
اذا نعم. كيف يكون ذلك ممكنا؟
هل يمكن لأي شخص أن يعطي فكرة عن ذلك؟
شكرا.
المحلول
<jsp:useBean id="test" class="java.lang.String" scope="request"/>
<%
test = "false";
%>
1. outside scriptlet: <c:out value="${test}"/> <!-- will not print anything -->
<%
out.println("2. in scriptlet: " + test); // will print false
%>
<c:set var="test" value="true" />
3. outside scriptlet: <c:out value="${test}"/> <!-- will print true -->
<%
out.println("4. in scriptlet: " + test); // will print false
%>
نصائح أخرى
يمكنك حتى استخدام كائن الطلب للحصول على متغير الإجراء. على سبيل المثال، إذا كان لديك متغير String userName
في العمل، يمكنك استخدام
<%
String userName = (String) request.getAttribute("userName");
%>
نعم،
<s:set var="jspVariable" value="%{strutsVariable}"/>
<jsp:useBean id="jspVariable" type="com.example.Object" />
<%=jspVariable%>
لا تنتمي إلى StackOverflow