Função boba para Strings - replace Substring[resolvido]

Bom dia.

Alguém por gentileza sabe me dizer como eu faço um replace numa string a partir de uma substring dentro desta string? Exemplo:

Tenho o seguinte XML:

String resposta=
"<page>"+
"    <codigo>48</codigo>"+
"    <mensagem>Erro de chamada ao serviço.</mensagem>"+
"    <observacao>fausdfhausdhfaiusdhf</observacao>"+
"</page>";

Desejo retirar desta string a chave , e que ela fique assim:

<page>
    <codigo>48</codigo>
    <mensagem>Erro de chamada ao serviço.</mensagem>
</page>

Não posso usar só replaceAll nem replace, pelo menos que eu consiga enxergar, pois esta minha resposta é dinâmica, e a observação varia de tamanho.

Desde já agradeço alguma ajuda.
[]'s

Cara eu vejo uma maneira mais acho meio complicada com split

String resposta=
 "<page>"+
 "    <codigo>48</codigo>"+
 "    <mensagem>Erro de chamada ao serviço.</mensagem>"+
 "    <observacao>fausdfhausdhfaiusdhf</observacao>"+
 "</page>";
String[] respostas = resposta.split("<observacao>");
String[] respostas2 = respostas[1].split("</observacao>");
String respostaFinal = respostas[0]+respostas2[1];
System.out.println(respostaFinal);

Beleza cara, funcionou perfeitamente!
Nem achei tão complicado não, acho que o importante é funcionar direito, mas claro que podendo simplificar o código é sempre bom!
Obrigado pela ajuda.
[]´s

Pois é não ficou complicado mas antes de eu passar pro código na minha cabeça tinha ficado tudo embaralhado.
Só depois que fiz vi que era simples

Imagino.
Geralmente é assim mesmo… ás vezes uma solução simples deu muito trabalho para ser construída. Um exemplo é você criar uma classe com 100 linhas que executa uma determinada tarefa, e com o tempo, a mesma classe passa a ter 70, 60 linhas, e executando a mesma tarefa, com o mesmo desempenho, ou até melhor…
[]´s