passage de paramètres à distance beanshell
-
19-09-2019 - |
Question
Je dois passer le paramètre à distant script BeanShell qui est géré par
java -cp bsh-2.0b4.jar bsh.Remote http://10.0.0.1/beanshell script.bsh p1 p2 p3
appel.
Est-il possible de lire une certaine façon params de la p1 ', 'p2' et 'p3' à partir du script.bsh
?
p.s. params locales en passant par bsh.args
fonctionne très bien, mais il est inutilisable avec des scripts à distance.
La solution
Je suppose que, vous utilisez la bibliothèque beanshell . Il n'y a aucun moyen de le faire, selon les sources: l'utilitaire ne prend que deux arguments: l'URL et le nom du fichier de script local. Il ne même supporte pas plusieurs noms de fichiers de script, comme il prétendre.
public class Remote
{
public static void main( String args[] ) throws Exception
{
if ( args.length < 2 ) {
System.out.println("usage: Remote URL(http|bsh) file [ file ] ... ");
System.exit(1);
}
String url = args[0];
String text = getFile(args[1]);
int ret = eval( url, text );
System.exit( ret );
}
devrait également être au courant sur les arguments passés du côté serveur.
Les moyens pour vous:
- Créez le modèle de script, dans lequel vous substituer les arguments du script et enregistrer le script de remplacement à température dir avant de passer à
bsh.Remote
- Créer un fichier distant, où le script peut demander des arguments. Vous avez besoin de communication supplémentaire avec le site distant pour télécharger ce fichier avant d'appeler
bsh.Remote
.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow