Newsgroup: it.comp.java
Titolo: Struts problema in ricerca articolo

Ciao a tutti,
ho necessità di generalizzare la  funzione di ricerca articolo nella
mia applicazione, attualmente la ricerca articolo funziona, ma è
vincolata al form bean che la richiama.
Questa è la parte di jsp che gestisce l'input utente e richiama la
ricerca :
<html>
	<head>
		<title>Gestione Movimenti di magazzino</title>
		<SCRIPT LANGUAGE="JavaScript">
			function ricercaArticolo(){
				W1=window.open('<html:rewrite page='/artgest.do?do=ricerca'/>',
					'','width=500,height=400,top=100,left=700');
			}
		</script>
	</head>
	<body>
	<b>Gestione Movimenti di Magazzino</b>
	<br><br>
   		<html:form action="/movgest">
			<table border="1">
				........
				<tr>
					<td>Articolo</td>
					<td><html:text property="moaridDesc" /></td>
					<td><html:hidden property="moarid" /></td>
					<td><input type="button" name="choice"
					onClick="ricercaArticolo()"
					value=" >> Ricerca << "><td>
		.......
questo è il jsp della ricerca articolo:
	<html>
	<head>
		<title>Ricerca Tabella Articolo</title>
		<SCRIPT LANGUAGE="JavaScript">
			function sendValue(arId, arcodi){
				window.opener.document.movimentoBeanForm.moarid.value = arId;
				window.opener.document.movimentoBeanForm.moaridDesc.value = arcodi;
				window.close();
			}
		</script>
	</head>
	<body>
	<b>Ricerca Tabella Articoli</b>
	<br><br>
	<form name=selectform>
		<input type="hidden" name="mappa" value="ricerca">
	<br>
	<table border="1">
		<tbody>
		<tr>
			<td>Codice</td>
			<td>Descrizione</td>
		</tr>
		<logic:iterate name="articoloBeanForm" property="articoloDOL"
id="articolo" >
		<tr>
		 <td><a href='javascript:onClick=sendValue(<bean:write
name="articolo" property="arId" />,
		 	"<bean:write name="articolo" property="arcodi" />")'>
		    <bean:write name="articolo" property="arcodi" /></a></td>
		 <td><bean:write name="articolo" property="ardesc" /></td>
		</tr>
		</logic:iterate>
	.......
Come posso svincolare dal jsp della ricerca articolo il caricamento dei
valori del beanform:
	window.opener.document.movimentoBeanForm.moarid.value = arId;
	window.opener.document.movimentoBeanForm.moaridDesc.value = arcodi;
e semmai metterlo del jsp chiamante?
Sono molto gradite anche eventuali soluzioni alternative.
Grazie in anticipo.

Ho trovato una soluzione al mio problema:
nella prima jsp ho aggiunto 3 attributi du sessione :
<SCRIPT LANGUAGE="JavaScript">
			function ricercaArticolo(){
				<%
					session.setAttribute("bf", "movimentoBeanForm");
					session.setAttribute("f1", "moarid");
					session.setAttribute("f2", "moaridDesc");
				%>
				window.open('<html:rewrite page='/artgest.do?do=ricerca'/>',
					'','width=500,height=400,top=100,left=700');
			}
</script>
che uso nella jsp di ricerca articolo per aggiornare i campi del
beanform :
<SCRIPT LANGUAGE="JavaScript">
			function sendValue(arId, arcodi){
				window.opener.document.<%= session.getAttribute("bf") %>.
				<%= session.getAttribute("f1") %>.value = arId;
				window.opener.document.<%= session.getAttribute("bf") %>.
				<%= session.getAttribute("f2") %>.value = arcodi;
				window.close();
			}
</script>
In questo modo, spero di poter richiamare la funzione di ricerca
articolo in qualsiasi situazione in cui mi serve.
Ciao