2016-09-27 4 views
3

So hatte ich ein bisschen Erfahrung mit Front-End-Web-Dev und viel Erfahrung mit OOP (mit Java), aber ich habe nie mit der Verarbeitung von Benutzereingaben aus einem HTML-Formular und tun etwas mit diesen Daten. Da ich so viel Erfahrung mit Java hatte, dachte ich mir, dass das die beste Sprache ist, mit der man arbeiten kann. Was ich versuche zu tun ist, Benutzerdaten von einem Formular (grundlegende Sachen: Name, Adresse, usw.) zu sammeln und es in einer Java-Datei zu verarbeiten. Im Moment glaube ich nicht, dass die Daten sogar in die Java-Datei übertragen werden, da passiert nichts, wenn ich auf "Senden" klicke. Was mache ich hier falsch?HTML sendet keine Daten an Java-Datei

index.html:

<!DOCTYPE html> 

<html> 

<head> 
<meta charset="utf-8"> 
<meta http-equiv="X-UA-Compatible" content = "IE=edge"> 
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> 
<title>Lob Application</title> 

<link href = "bootstrap.min.css" rel = "stylesheet"> 
<link href = "stylesheet.css" rel = "stylesheet" > 
</head> 

<body> 
<div id = formInput class = "container-fluid"> 
<form name = "submitDataForm" method = "post" action = "processData"> 
    Name:<br> 
    <input type = "text" name = "name"><br> 
    Address Line 1:<br> 
    <input type = "text" name = "addressLineOne"><br> 
    Address Line 2:<br> 
    <input type = "text" name = "addressLineTwo"><br> 
    City:<br> 
    <input type = "text" name = "city"><br> 
    State:<br> 
    <input type = "text" name = "state"><br> 
    Zip Code:<br> 
    <input type = "text" name = "zip"><br> 
    Message:<br> 
    <input type = "text" name = "message"><br> 
    <input id = "submit" type = "submit" value = "Submit" 
</form> 
</div> 

<!-- jQuery (necessary for Bootstrap's JavaScript plugins) --> 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 
<!-- Include all compiled plugins (below), or include individual files as needed --> 
<script src="bootstrap.min.js"></script> 
</body> 
</html> 

processData.java:

import java.io.*; 
import javax.servlet.*; 
import javax.servlet.http.*; 

@WebServlet("/processData") 
public class processData extends HttpServlet{ 
public static void main(String[] args){} 

protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException{ 
String name = req.getParameter("name"); 
String address1 = req.getParameter("addressLineOne"); 
String address2 = req.getParameter("addressLineTwo"); 
String city = req.getParameter("city"); 
String state = req.getParameter("state"); 
String zip = req.getParameter("zip"); 
String message = req.getParameter("message"); 

System.out.println("city: " + city); 

PrintWriter writer = resp.getWriter(); 

String htmlResponse = "<html>"; 
htmlResponse += "<h2>Your city is: " + city +"<br/>"; 
htmlResponse += "</html>"; 

writer.println(htmlResponse); 
} 
} 
+1

Überprüfen Sie die Browser-Konsole für alle Fehler auch Netzwerk-Registerkarte, ob Anfrage gesendet wird oder nicht. – ranjeet8082

+0

Wie würde ich das tun, ich bin nicht sicher, was eines dieser Dinge bedeutet:/ –

+0

Wenn Sie Chrom verwenden, dann klicken Sie auf drei vertikale Punkte-Symbol, das zum Öffnen der Einstellung verwendet wird. Es öffnet sich ein Fenster, in dem Sie weitere Werkzeuge und Entwicklerwerkzeuge auswählen können. Ein neues Fenster wird geöffnet. In diesem wählen Sie Konsolenreiter. Hier werden alle Fehlermeldungen gedruckt. Außerdem gibt es eine Netzwerkkarte, auf der alle vom Browser gesendeten Anfragen angezeigt werden. – ranjeet8082

Antwort

0

Code Ihre HTML-Code zu sehen Taste einreichen nicht korrekt ist, Input-Tag ist nicht

geschlossen

Code

<input id = "submit" type = "submit" value = "Submit" 

richtig sein sollte

Verwandte Themen