Как сгенерировать запрос на загрузку со страницы html на контроллер Spring MVC - PullRequest
0 голосов
/ 30 мая 2019

<html>
<head>
<title>Student Registration</title>
</head>

<body>
	<h3 align="center">New Trainee Registration</h3>
	
   		<table align="center" cellpadding="10">

   			<!-- First Name -->
   			<tr>
   				<td>First Name</td>
   				<td>${traineeData.fName}</td>
   			</tr>

   			<!-- Last Name -->
   			<tr>
   				<td>Last Name</td>
   				<td>${traineeData.lName}</td>
   			</tr>

   			<!-- Father's Name -->
   			<tr>
   				<td>Father's Name</td>
   				<td>${traineeData.fatherName}</td>
   			</tr>

   			<!-- Mobile Number -->
   			<tr>
   				<td>Mobile No.</td>
   				<td>${traineeData.mobile}</td>
   			</tr>
   			<tr>
   				<td>Joining Date</td>
   				<td>${traineeData.joiningDate}></td>
   			</tr>
   			<tr>
   				<td>Grade</td>
   				<td>${traineeData.grade}</td>
   			</tr>

   			<tr>
   				<td>Gender</td>
   				<td>${traineeData.gender}</td>
   			</tr>
   			<!-- Course -->
   			<tr>
   				<td>COURSES<br />APPLIED FOR
   				</td>
   				<td>${traineeData.course}</td>
   			</tr>

   			<tr>
   				<td>Joining Date</td>
   				<td>${traineeData.joiningDate}</td>
   			</tr>

   			<!-- Submit and Reset -->
		<tr>
			<td colspan="2" align="center">
				<button type="button" >Generate Certificate</button>
			</td>
	</tr>
	</table>
</body>
</html>

Допустим, у меня есть кнопка загрузки на моей HTML-странице.при нажатии на эту кнопку запрос проходит через контроллер весеннего MVC-фреймворка вместе с "enrollmentNo".

В классе Controller я буду использовать этот enrollmentNo.

У меня есть класс, который будетсгенерируйте сертификат для учащегося, извлекая данные, используя номер зачисления учащегося.

, ответ возвращается, и файл загружается (который представляет собой файл PDF, созданный моим предварительно созданным классом)

У меня естьпытался разными способами, но не получил то, что хотел.

@RequestMapping(value = "/generateCertificate")
public void generateCertificate(@RequestParam("traineeData.enrollmentNo") int enrollmentNo) {

    System.out.println("you in /generateCertificate");

    // I don't know what should I return... 
    // please change return type accordingly...
}

Мне нужна кнопка на моей HTML-странице под названием «Создать сертификат».Код должен быть простым и нормальным, Ajax можно использовать здесь.

1 Ответ

1 голос
/ 30 мая 2019

Ваша кнопка на самом деле ничего не делает, полезна.

Попробуйте этот код на кнопке ...

<tr>
    <td colspan="2" align="center">
        <form action="/generateCertificate" method="GET">
            <input type="hidden" name="enrollmentNo" value="${traineeData.enrollmentNo}"
            <button type="submit">Generate Certificate</button>
        </form>
    </td>
</tr>

Тогда ваш контроллер нужно будет немного изменить ...

@RequestMapping(value = "/generateCertificate")
public void generateCertificate(@RequestParam("enrollmentNo") int enrollmentNo) {

    // The @RequestParam was changed to the name of the param from the form and not the object/value.
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...