У вас есть две возможности:
1) Java в качестве контроллера
Из вашего Java сервлета получите данные формы:
String Form_text_data = request.getParameter("text_input");
Если имеется много полей, вы можете создать экземпляр StringBuilder (со всеми требуемыми полями, которые вам нужны), чтобы получить одну строку ответа на все целевые поля - обязательно проверяйте правильность этих полей перед добавлением их в свою строку Builder.
Затем передайте свой результат String из построителя строк в класс Runtime, который имеет метод exe c:
StringBuilder Python_script_command = new StringBuilder("python PATH/TO/YOUR/PYTHON_SCRIPT.py");
Python_script_command.append(Form_text_data) // Repeat this as many time as you wish for each form fields, but be sure to make sanity check before to avoid any injections that you do not want
Process p = Runtime.getRuntime().exec(Python_script_command.toString());
Затем вы можете прочитать вывод, связав его в этом способ:
BufferedReader stdInput = new BufferedReader(new
InputStreamReader(p.getInputStream()));
BufferedReader stdError = new BufferedReader(new
InputStreamReader(p.getErrorStream()));
// read the output from the command
System.out.println("Here is the standard output of the command:\n");
while ((s = stdInput.readLine()) != null) {
System.out.println(s);
}
см. эту статью для более подробной информации:
http://alvinalexander.com/java/edu/pj/pj010016
2) Выполнить из python API Framwork, такой как FLASK
Вы также можете создать REST API непосредственно в python, и когда пользователь отправляет форму, вы отправляете ее через запрос POST в ваше python приложение
И тогда чрезвычайно просто извлечь нужные данные:
from flask import Flask, request
app = Flask(__name__)
@app.route('/', methods=['GET', 'POST'])
def index():
default_name = '0'
data = request.form.get('input_name', default_name) #here is an example on one data getter from a form field
подробности см. В этом ответе ( Как получить данные формы в Flask? )
, а затем использовать эти данные непосредственно в python, снова сделать все виды проверок вменяемости