J'essaie de convertir ce scriptlet code en classe JSF.convertir du scriptlet au problème de bean géré par JSF
Le code de la vue
<f:view>
<h:form binding="#{jsfSocketClient.form}">
<h:outputText binding="#{jsfSocketClient.text}"/>
</h:form>
</f:view>
et le code java
private HtmlForm form = new HtmlForm();
private HtmlOutputText text = new HtmlOutputText();
public HtmlForm getForm()
{
System.out.println("instance: "+FacesContext.getCurrentInstance().getResponseWriter());
ResponseWriter writer = (FacesContext.getCurrentInstance()).getResponseWriter();
try{
int character;
Socket socket = new Socket("127.0.0.1", 8765);
InputStream inSocket = socket.getInputStream();
OutputStream outSocket = socket.getOutputStream();
String str = "Hello!\n";
byte buffer[] = str.getBytes();
outSocket.write(buffer);
char characters = 0;
while ((character = inSocket.read()) != -1) {
text.setValue((char)character);
//writer.write((char)character);
//characters += (char)character;
}
//text.setValue(characters);
if(str.equalsIgnoreCase("bye"))
{
socket.close();
}
}
catch(Exception e)
{
e.printStackTrace();
text.setValue("You must first start the server application (YourServer.java) at the command prompt.");
}
return form;
}
Quand je lance le code scriptlet, je reçois la réponse que "Le serveur a ceci: Bonjour!"
Lorsque je lance le code JSF, je ne reçois pas cette réponse. S'il vous plaît corriger mon erreur
Merci d'avance
comment est-ce que vous _run_ le code jsf ..? – Bozho
Qu'est-ce que vous obtenez à la place? –
@tomas un caractère inconnu comme ceci ঠ – mvg