How to send data from an html form to a java Server Socket?
.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty{ height:90px;width:728px;box-sizing:border-box;
}
the problem is this: I created a java Server using ServerSocket and Socket class. The html page is shown correctly but i have no idea on how can i send data (from an input type = text) to my java Server and then show the message i wrote on another html page.
The code is the following:
MyServer class:
private int port;
private ServerSocket ss;
private Socket s;
private PrintWriter pw;
public MyServer(){
port = 1245;
try{
ss = new ServerSocket(port);
System.out.println("server creato");
}
catch(Exception e){
e.printStackTrace();
}
listen();
}
public void listen(){
try{
while(true){
s = ss.accept();
System.out.println("OK");
if(s == null)
System.exit(1);
Client c = new Client(s);
c.start();
}
}catch(Exception e){
e.printStackTrace();
}
}
Client class (extends Thread):
public Client(Socket s){
this.s = s;
try{
pw = new PrintWriter(s.getOutputStream(), true);
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
f = new File("test.html");
}catch(Exception e){
e.printStackTrace();
}
}
public BufferedReader getBr(){
return this.br;
}
public PrintWriter getPw(){
return this.pw;
}
public File getF(){
return this.f;
}
public void displayHtml(){
try {
FileInputStream fis = new FileInputStream(f);
BufferedReader br2 = new BufferedReader(new InputStreamReader(fis));
StringBuilder sb = new StringBuilder();
String ris = null;
while((ris = br2.readLine()) != null){
sb.append(ris);
//sb.append("rn");
}
pw.println("HTTP/1.1 200 OK");
pw.println("Content-Type: text/html");
pw.println("rn");
pw.println(sb.toString());
pw.flush();
s.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void
public void run(){
try{
displayHtml();
}catch(Exception e){
e.printStackTrace();
}
}
}
Finally, the Main class:
public static void main(String args){
MyServer ms = new MyServer();
}
I' m searching for a good solution. I wish not to delete all my code in order to do that. Thank you :)
java html serversocket
add a comment |
the problem is this: I created a java Server using ServerSocket and Socket class. The html page is shown correctly but i have no idea on how can i send data (from an input type = text) to my java Server and then show the message i wrote on another html page.
The code is the following:
MyServer class:
private int port;
private ServerSocket ss;
private Socket s;
private PrintWriter pw;
public MyServer(){
port = 1245;
try{
ss = new ServerSocket(port);
System.out.println("server creato");
}
catch(Exception e){
e.printStackTrace();
}
listen();
}
public void listen(){
try{
while(true){
s = ss.accept();
System.out.println("OK");
if(s == null)
System.exit(1);
Client c = new Client(s);
c.start();
}
}catch(Exception e){
e.printStackTrace();
}
}
Client class (extends Thread):
public Client(Socket s){
this.s = s;
try{
pw = new PrintWriter(s.getOutputStream(), true);
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
f = new File("test.html");
}catch(Exception e){
e.printStackTrace();
}
}
public BufferedReader getBr(){
return this.br;
}
public PrintWriter getPw(){
return this.pw;
}
public File getF(){
return this.f;
}
public void displayHtml(){
try {
FileInputStream fis = new FileInputStream(f);
BufferedReader br2 = new BufferedReader(new InputStreamReader(fis));
StringBuilder sb = new StringBuilder();
String ris = null;
while((ris = br2.readLine()) != null){
sb.append(ris);
//sb.append("rn");
}
pw.println("HTTP/1.1 200 OK");
pw.println("Content-Type: text/html");
pw.println("rn");
pw.println(sb.toString());
pw.flush();
s.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void
public void run(){
try{
displayHtml();
}catch(Exception e){
e.printStackTrace();
}
}
}
Finally, the Main class:
public static void main(String args){
MyServer ms = new MyServer();
}
I' m searching for a good solution. I wish not to delete all my code in order to do that. Thank you :)
java html serversocket
You are effectively writing a web application. Usually you would use a web framework, an application server like Tomcat, or both, for this, because that makes things easier. Also, what you call "client" would more normally be called a "servlet". It is confusing to call it "client".
– Robin Green
Nov 24 '18 at 14:04
thank you, i will study another way to do this :)
– Andrea Cominelli
Nov 25 '18 at 10:19
add a comment |
the problem is this: I created a java Server using ServerSocket and Socket class. The html page is shown correctly but i have no idea on how can i send data (from an input type = text) to my java Server and then show the message i wrote on another html page.
The code is the following:
MyServer class:
private int port;
private ServerSocket ss;
private Socket s;
private PrintWriter pw;
public MyServer(){
port = 1245;
try{
ss = new ServerSocket(port);
System.out.println("server creato");
}
catch(Exception e){
e.printStackTrace();
}
listen();
}
public void listen(){
try{
while(true){
s = ss.accept();
System.out.println("OK");
if(s == null)
System.exit(1);
Client c = new Client(s);
c.start();
}
}catch(Exception e){
e.printStackTrace();
}
}
Client class (extends Thread):
public Client(Socket s){
this.s = s;
try{
pw = new PrintWriter(s.getOutputStream(), true);
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
f = new File("test.html");
}catch(Exception e){
e.printStackTrace();
}
}
public BufferedReader getBr(){
return this.br;
}
public PrintWriter getPw(){
return this.pw;
}
public File getF(){
return this.f;
}
public void displayHtml(){
try {
FileInputStream fis = new FileInputStream(f);
BufferedReader br2 = new BufferedReader(new InputStreamReader(fis));
StringBuilder sb = new StringBuilder();
String ris = null;
while((ris = br2.readLine()) != null){
sb.append(ris);
//sb.append("rn");
}
pw.println("HTTP/1.1 200 OK");
pw.println("Content-Type: text/html");
pw.println("rn");
pw.println(sb.toString());
pw.flush();
s.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void
public void run(){
try{
displayHtml();
}catch(Exception e){
e.printStackTrace();
}
}
}
Finally, the Main class:
public static void main(String args){
MyServer ms = new MyServer();
}
I' m searching for a good solution. I wish not to delete all my code in order to do that. Thank you :)
java html serversocket
the problem is this: I created a java Server using ServerSocket and Socket class. The html page is shown correctly but i have no idea on how can i send data (from an input type = text) to my java Server and then show the message i wrote on another html page.
The code is the following:
MyServer class:
private int port;
private ServerSocket ss;
private Socket s;
private PrintWriter pw;
public MyServer(){
port = 1245;
try{
ss = new ServerSocket(port);
System.out.println("server creato");
}
catch(Exception e){
e.printStackTrace();
}
listen();
}
public void listen(){
try{
while(true){
s = ss.accept();
System.out.println("OK");
if(s == null)
System.exit(1);
Client c = new Client(s);
c.start();
}
}catch(Exception e){
e.printStackTrace();
}
}
Client class (extends Thread):
public Client(Socket s){
this.s = s;
try{
pw = new PrintWriter(s.getOutputStream(), true);
br = new BufferedReader(new InputStreamReader(s.getInputStream()));
f = new File("test.html");
}catch(Exception e){
e.printStackTrace();
}
}
public BufferedReader getBr(){
return this.br;
}
public PrintWriter getPw(){
return this.pw;
}
public File getF(){
return this.f;
}
public void displayHtml(){
try {
FileInputStream fis = new FileInputStream(f);
BufferedReader br2 = new BufferedReader(new InputStreamReader(fis));
StringBuilder sb = new StringBuilder();
String ris = null;
while((ris = br2.readLine()) != null){
sb.append(ris);
//sb.append("rn");
}
pw.println("HTTP/1.1 200 OK");
pw.println("Content-Type: text/html");
pw.println("rn");
pw.println(sb.toString());
pw.flush();
s.close();
}catch(Exception e){
e.printStackTrace();
}
}
public void
public void run(){
try{
displayHtml();
}catch(Exception e){
e.printStackTrace();
}
}
}
Finally, the Main class:
public static void main(String args){
MyServer ms = new MyServer();
}
I' m searching for a good solution. I wish not to delete all my code in order to do that. Thank you :)
java html serversocket
java html serversocket
asked Nov 24 '18 at 10:02
Andrea CominelliAndrea Cominelli
11
11
You are effectively writing a web application. Usually you would use a web framework, an application server like Tomcat, or both, for this, because that makes things easier. Also, what you call "client" would more normally be called a "servlet". It is confusing to call it "client".
– Robin Green
Nov 24 '18 at 14:04
thank you, i will study another way to do this :)
– Andrea Cominelli
Nov 25 '18 at 10:19
add a comment |
You are effectively writing a web application. Usually you would use a web framework, an application server like Tomcat, or both, for this, because that makes things easier. Also, what you call "client" would more normally be called a "servlet". It is confusing to call it "client".
– Robin Green
Nov 24 '18 at 14:04
thank you, i will study another way to do this :)
– Andrea Cominelli
Nov 25 '18 at 10:19
You are effectively writing a web application. Usually you would use a web framework, an application server like Tomcat, or both, for this, because that makes things easier. Also, what you call "client" would more normally be called a "servlet". It is confusing to call it "client".
– Robin Green
Nov 24 '18 at 14:04
You are effectively writing a web application. Usually you would use a web framework, an application server like Tomcat, or both, for this, because that makes things easier. Also, what you call "client" would more normally be called a "servlet". It is confusing to call it "client".
– Robin Green
Nov 24 '18 at 14:04
thank you, i will study another way to do this :)
– Andrea Cominelli
Nov 25 '18 at 10:19
thank you, i will study another way to do this :)
– Andrea Cominelli
Nov 25 '18 at 10:19
add a comment |
0
active
oldest
votes
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53457067%2fhow-to-send-data-from-an-html-form-to-a-java-server-socket%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
0
active
oldest
votes
0
active
oldest
votes
active
oldest
votes
active
oldest
votes
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53457067%2fhow-to-send-data-from-an-html-form-to-a-java-server-socket%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
You are effectively writing a web application. Usually you would use a web framework, an application server like Tomcat, or both, for this, because that makes things easier. Also, what you call "client" would more normally be called a "servlet". It is confusing to call it "client".
– Robin Green
Nov 24 '18 at 14:04
thank you, i will study another way to do this :)
– Andrea Cominelli
Nov 25 '18 at 10:19