2009-12-01 20 views
6

Je tente de publier le flux Atom (généré avec Rome) à l'aide de Java 6 SE httpserver. Pour une découverte de flux correcte dans FireFox, j'ai besoin d'en-têtes personnalisés.Paramètres en-têtes http dans Java 6 SE httpserver

Ceci est mon code:

Headers headers=e.getRequestHeaders(); 
ArrayList<String>list=new ArrayList<String>(); 
list.add("application/atom+xml"); 
headers.put("content-type", list); 
e.sendResponseHeaders(200, 0); 

Malheureusement l'alimentation DIFFUSE comme xml (navigateur ne pas me demander ce qu'il faut faire avec des aliments) et reniflant avec livehttpheaders montre qu'il n'y a pas attribut type de contenu .

+7

(. Je ne me souviens pas du code de la main, mais il semble que vous ajoutez à la demande au lieu des en-têtes de réponse) –

+1

commentaire de Tom devrait être une réponse. L'ajout d'un objet content-type à l'objet headers obtenu à l'aide de getRequestHeaders() n'affecte pas les en-têtes envoyés en réponse. –

+0

merci. Cela a bien sûr aidé. –

Répondre

12

Vous pouvez définir les en-têtes de réponse comme ceci:

Headers headers = exchange.getResponseHeaders(); 
headers.add("Content-Type", "application/atom+xml"); 
exchange.sendResponseHeaders(200, 0);