Nessa atividade fomos apresentados ao sítio da disciplina.
Nessa atividade, recebemos um login e uma senha para acesso ao sítio.
Utilizaremos a ferramenta Drupal para criação de páginas.
Foi compilado o código fonte do World Server 3D e está disponível aqui.
Links do código fonte e da ferramenta compilada:
World Server 3D Client (código fonte)
Screenshot da aplicação: para usá-la, digita-se o servidor e a porta do World Server 3D, clique em connect e insira os comandos no text box.
Código fonte: WorldServer3DClient.java
package worldserver3dclient; import java.io.BufferedReader; import java.io.DataOutputStream; import java.io.IOException; import java.io.InputStreamReader; import java.net.Socket; /** * * @author Luiz Fernando Romanini */ public class WorldServer3DClient { Socket clientSocket = null; public void connect( String strHost, int iPort ) throws IOException { clientSocket = new Socket( strHost, iPort ); } public void disconnect( ) throws IOException { if( clientSocket != null ) clientSocket.close( ); clientSocket = null; } public boolean isConnected( ) { boolean b = false; if( clientSocket != null ) b = clientSocket.isConnected( ); return b; } public String send( String strMessage ) throws IOException { StringBuilder stringBuilder = new StringBuilder( ); DataOutputStream outToServer = new DataOutputStream( clientSocket.getOutputStream( ) ); BufferedReader inFromServer = new BufferedReader( new InputStreamReader( clientSocket.getInputStream ( ) ) ); outToServer.writeBytes( strMessage + '\n' ); while( inFromServer.ready( ) ) { stringBuilder.append( inFromServer.readLine( ) ); stringBuilder.append( '\n' ); } return stringBuilder.toString( ); } }
Parte do código fonte que utiliza o WorldServer3DClient: JFrame.java
private void jBtnConnectActionPerformed(java.awt.event.ActionEvent evt) { try { if( worldServer3DClient == null ) worldServer3DClient = new WorldServer3DClient( ); worldServer3DClient.disconnect( ); worldServer3DClient.connect( jTxtHost.getText( ), Integer.parseInt( jTxtPort.getText( ) ) ); } catch( IOException e ) { jTxtInformationArea.setText( jTxtInformationArea.getText( ) + '\n' + e.toString( ) ); } } private void jBtnExecuteActionPerformed(java.awt.event.ActionEvent evt) { try { if( worldServer3DClient == null || !worldServer3DClient.isConnected( ) ) { jTxtInformationArea.setText( jTxtInformationArea.getText( ) + '\n' + "Not connected!" ); } else if( !"".equals( jTxtCommand.getText( ).trim( ) ) ) { String strMessageReturned = worldServer3DClient.send( jTxtCommand.getText( ) ); jTxtInformationArea.setText( jTxtInformationArea.getText( ) + '\n' + strMessageReturned ); jTxtCommand.setText( "" ); } } catch( IOException e ) { jTxtInformationArea.setText( jTxtInformationArea.getText( ) + '\n' + e.toString( ) ); } }
Theme by Danetsoft and Danang Probo Sayekti inspired by Maksimer