segue:
[code]package br.com.ceuma.server;
import java.io.IOException;
import java.net.ServerSocket;
import java.net.Socket;
import br.com.ceuma.converter.Converter;
public class Server {
public static void main(String[] args) {
try {
ServerSocket server = new ServerSocket(5000);
while(true){
Socket cliente = server.accept();
Thread thread = new Thread(new Converter(cliente));
thread.start();
}
} catch (IOException e) {
e.printStackTrace();
}
}
}
// soffice.exe -accept=socket,host=localhost,port=8100;urp;StarOffice.ServiceManager
[/code]
[code]package br.com.ceuma.client;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.Socket;
public class Client {
public static void main(String[] args) throws Exception {
try {
Socket client = new Socket("127.0.0.1", 5000);
OutputStream out = client.getOutputStream();
InputStream in = new FileInputStream("C:\\autistmo.docx");
BufferedInputStream buffer = new BufferedInputStream(in, 1024);
byte[] b = new byte[1024];
int len = 0;
int bytcount = 1024;
while ((len = buffer.read(b, 0, 1024)) != -1) {
bytcount = bytcount + 1024;
out.write(b, 0, len);
}
// resposta
BufferedInputStream buffer2 = new BufferedInputStream(in, 1024);
FileOutputStream out2 = new FileOutputStream("docs/final.doc");
while ((len = buffer2.read(b, 0, 1024)) != -1) {
bytcount = bytcount + 1024;
out2.write(b, 0, len);
}
out2.close();
buffer2.close();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
[/code]
Converter
[code]package br.com.ceuma.converter;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
import java.net.ConnectException;
import java.net.Socket;
import br.com.ceuma.connection.ConnectionManager;
import com.artofsolving.jodconverter.DocumentConverter;
import com.artofsolving.jodconverter.openoffice.connection.OpenOfficeConnection;
import com.artofsolving.jodconverter.openoffice.converter.OpenOfficeDocumentConverter;
public class Converter implements Runnable {
private Socket socket;
private OpenOfficeConnection manager;
private File doc;
private File pdf;
public Converter(Socket socket) {
this.socket = socket;
this.doc = new File("docs/atual.doc");
this.pdf = new File("pdf/atual.pdf");
}
private void getDocArchive(){
try {
InputStream in = socket.getInputStream();
BufferedInputStream buffer = new BufferedInputStream(in, 1024);
byte[] b = new byte[1024];
int len = 0;
int bytcount = 1024;
FileOutputStream out = new FileOutputStream("docs/atual.doc");
while ((len = buffer.read(b, 0, 1024)) != -1) {
bytcount = bytcount + 1024;
out.write(b, 0, len);
}
out.flush();
//out.close();
//buffer.close();
} catch (IOException e) {
System.out.println("Ocorreu um erro no recebimento do arquivo");
}
}
private void start(){
try {
this.manager = ConnectionManager.getCurrentInstance();
this.manager.connect();
} catch (ConnectException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private void stop(){
manager.disconnect();
}
public void converter(){
start();
DocumentConverter converter = new OpenOfficeDocumentConverter(manager);
converter.convert(doc, pdf);
stop();
}
@Override
public void run() {
getDocArchive();
converter();
reponse();
}
private void reponse() {
try {
OutputStream out = socket.getOutputStream();
InputStream in = new FileInputStream(pdf);
BufferedInputStream buffer = new BufferedInputStream(in, 1024);
byte[] b = new byte[1024];
int len = 0;
int bytcount = 1024;
int i = 0;
while ((len = buffer.read(b, 0, 1024)) != -1) {
bytcount = bytcount + 1024;
out.write(b, 0, len);
}
out.flush();
out.close();
buffer.close();
} catch (IOException e) {
e.printStackTrace();
System.out.println(e.getMessage());
}
}
}
[/code]
Exception:
[quote]java.net.SocketException: Connection reset by peer: socket write error
at java.net.SocketOutputStream.socketWrite0(Native Method)
at java.net.SocketOutputStream.socketWrite(Unknown Source)
at java.net.SocketOutputStream.write(Unknown Source)
at br.com.ceuma.converter.Converter.reponse(Converter.java:107)
at br.com.ceuma.converter.Converter.run(Converter.java:90)
at java.lang.Thread.run(Unknown Source)[/quote]
alguem da uma ajuda aeh?