Pode pegar um array de bytes sim !!! Array é serializável, desde que os objetos desse array sejam serializáveis.
Mas eu acho que eu entendi o seu problema !!! :idea:
Vc não pode jogar o seu inputstream dentro de um ObjectInputStream porque a outra ponta (o palm) não está usando um ObjectOutputStream. Essa comunicação de objetos tem todo um protocolo especial.
Não use ObjectInputStream, use um DataInputStream ou BufferedInputStream para receber bytes.
Como vc sabe que a String terminou ???
use um payload (tamanho + bytes) ou alguma sequencia de bytes no final para indicar que a string terminou, isto é, chegou por inteira.
Depois vc pega o seu array de bytes e reconstrói a sua String.
De repente vc nem precisa pegar bytes, basta colocar uma quebra de linha na sua string e converte-la para um array de bytes no palm. Aí no servidor vc pode usar direto um BufferedReader e pegar tudo com readLine(). Só tome cuidado com o charset que o seu palm está usando para converter sua string em bytes, pois pode não ser o mesmo do seu BufferedReader, mas acho que será o mesmo sim, pois vc está usando o super-SuperWaba!.
Depois me fala se era isso que estava rolando.
OBS: Depois vc vai ter que me ajudar a fazer esses programinhas maneiros para Palm tb, hein !!! 