[RESOLVIDO] Rapidinha! Enviar dois Objetos para o servlet

Seguinte no código abaixo eu envio um arquivo para o servidor …
ate ai tudo bem,
mas eu queria enviar um string antes disso …
quero enviar qual a extensao do arquivo.
tipo enviar uma String e depois o meu array de bytes do arquivo.

[code]FileInputStream bais = new FileInputStream(arquivoFinal);
BufferedOutputStream bos = new BufferedOutputStream(conexao.getOutputStream());

while (true) {
synchronized (buffer) {
int amountRead = bais.read(buffer);
if (amountRead == -1) {
break;
}
bos.write(buffer, 0, amountRead);
}
}

bais.close();

bos.flush();
bos.close();[/code]

aqui é onde eu leio o arquivo… ja no meu servlet…
aqui eu iria ler … primeiro a string que é a extensao e depois o arquivo.

[code]BufferedInputStream bis = new BufferedInputStream(request.getInputStream());
FileOutputStream fos = new FileOutputStream(arquivoFinal);

bis.read(new byte[extensao.getBytes().length]);
while(true)
{
synchronized(buffer)
{
int amountRead = bis.read(buffer);
if(amountRead == -1)
{
break;
}
fos.write(buffer, 0, amountRead);
}
}

bis.close();

fos.flush();
fos.close();[/code]

Urgente por favor, sei que é meio simples, se alguem puder me ajudar.


RESOLVVIDO…
NA VERDADE FICO A SOLUÇÃO QUE EU POSTEI MAIS ABAIXO, JA QUE NAO SURGIU OUTRA

Cara não entendi muito bem!
Mas seguinte você pode fazer um unico método para isso!
qualquer coisa explica melhor sua duvida…
mas se o arquivo que vc vai fazer o upload for sempre o mesmo tipo .txt ja joga direto la senão vai ter que pegar nome do arquivo e mandar com o array de bytes la você decide o que usar primeiro(Orientação a objeto) cria um objeto e popula ele com os dados depois vc trabalha tranquilamente!
Valeu!

cara é o seguinte…
se eu estou pedindo … é porque vai variar …

eu dei uma solução meio fulera pra resolver por hora…
eu padronizei que minha string extensao vai ter no maximo 164 bytes
entao criei um array de bytes pegando extensao.getBytes();

escrevi no meu outPut um array de 164 bytes …

byte[] extensaoByte = extensao.getBytes(); byte[] bytes = new byte[164 - extensao.getBytes().lenght]; bos.write(extensaoByte); bos.write(bytes);
e depois os bytes do meu arquivo …

e no servlet eu li um array de 164 bytes e trasnformei em string …

byte[] extensaoByte = new byte[164]; bis.read(extensaoByte); String extensao = new String(extensaoByte).trim();
e depois peguei o resto … q eu sei que é o file …

so que aqui eu to convencionando…padronizando …
e eu nao queria fazer deste jeito…
queria um jeito melhor…