2012-04-24 3 views
0

Java를 사용하여 클라이언트 webservice url에 pdfs를 보내려고합니다. 어떻게 할 수 있습니까?Java를 사용하여 원격 서버에 pdfs를 보내는 방법은 무엇입니까?

+0

어떤 기술을 사용합니까? 순수 서블릿? 중심선? Jax-WS? ... –

+0

이것은 웹 서비스의 사양에 따라 크게 달라집니다. –

+2

특히 '원격 웹 서버'로 푸시하려는 경우 '클라이언트 웹 서비스 URL'은 무엇을 의미합니까? 게으른 질문은 당신에게 좋은 대답을 얻지 못할 것입니다. –

답변

1

몇 가지 간단한 단계. 인터넷 검색을 위해 대괄호 안에 몇 가지 용어를 추가하겠습니다.

  1. pdf 파일의 FileInputStream을 엽니 다. (자바 파일 인풋 스트림)
  2. 파일을 보낼 서버를 알리십시오.
  3. byte [] 버퍼를 사용하여 입력 스트림에서 채우고 서버에 씁니다. (java 읽기 입력 스트림 버퍼). 앞으로 버퍼의 크기를 서버에 알려야합니다.

다음은 몇 가지 샘플 코드입니다.

InputStream in = new FileInputStream(file); 
OuputStream os = socket.getOutputStream(); 
DataOutputStream dos = new DataOutputStream(os); 
int n; 
byte[] b = new byte[1024 * 16]; 
while ((n = in.read(b)) != -1) 
{ 
    dos.writeByte(1); // tell the server a buffer is coming 
    dos.writeInt(n); // tell it the how big the buffer is 
    dos.write(b, 0, n); // write the buffer 
} 
dos.writeByte(0); // tell the server no more buffers are coming. 
dos.flush(); 

이제는 서버의 일부를 작성해야합니다.

+0

글쎄, 내 질문에 대한 답변이 아닌 것 같은데 ... 다른 것을 원한다고 생각합니다 ... 그러나 나는 확실하지 않다 –

+0

URL은 u는 새로운 URL (URL)를 =;. URLConnection의 UC = u.openConnection(); uc.setDoOutput (참) uc.setDoInput (참) uc.setAllowUserInteraction (거짓) ; DataOutputStream dstream = new DataOutputStream (uc.getOutputStream()); – Sapphire

+0

DataOutputStream 객체를 다르게 정의하고 쓰는 중 ... 작동합니까? – Sapphire

관련 문제