¿Algunas consultas básicas con respecto a la pila de valor en Struts 2?
-
30-10-2019 - |
Pregunta
Soy nuevo en Strut 2, aunque he trabajado en Struts 1.2. En uno de los archivos JSP del proyecto Pexisting, tengo el siguiente código:
<script type="text/javascript">
var relationshipData = { // line1
page : '<s:property value="displayPage" />', // line2
records : '<s:property value="customerRelations.size" />', // line3
rows : [ <s:iterator value="customerRelations" status="iterStatus"> // line4
{ id : '<s:property value="relationId" />',
cell : [ '<s:property value="relationDesc" escapeJavaScript="true" />' ] } <s:if test="!#iterStatus.last">,</s:if> //line5
</s:iterator>] // line6
};
</script>
Se acerca la solicitud CustomerRelationAction.java
que tiene método getCustomerRelations()
y getRelationId()
.
Aquí están las preguntas:-
Puse el método de Breakpoint Inside
getCustomerRelations()
. Veo que el flujo viene cuatro veces dentro de este método. Dos veces en la línea 3 y otras dos veces en la línea 4. Según mi comprensión, el flujo debe venir solo 1 vez, es decir, en la línea 3. Una vez que completa GetCustomErrelations en la línea 3, no debe poner su valor en la pila de valor para que pueda consultar ¿Se hace referencia a NextMe (como si se esté referir en la línea 14 nuevamente)?getCustomerRelations()
El método devuelve la lista deCustomerRelationData
objetos dondeCustomerRelationData
la clase también contiene elgetRelationId()
método. ahora en la línea 5 estamos referiendo valor = "relación en la línea 5. ¿En qué objeto (CustomerRelationAction.java o CustomErrelationData), se llamará el método getRelationId ()? Valor pila o no? En qué línea se colocará en la pila de valor?Ahora el iterador se completa en la línea 6. Después de eso, ahora remito el código
<s:property value="relationId" />
Nuevamente, ¿en qué objeto (CustomerRelationAction.java o CustomerRelationData), se llamará al método getRelationId ()?
No hay solución correcta