From 65b330f412b857057edd2029ff08ab53a037ce65 Mon Sep 17 00:00:00 2001 From: lresende Date: Sat, 8 Jan 2011 20:18:56 +0000 Subject: TUSCANY-3814 - Fixing http headers to avoid hanging IE6 when consuming tuscany atom feeds git-svn-id: http://svn.us.apache.org/repos/asf/tuscany@1056789 13f79535-47bb-0310-9956-ffa450edef68 --- .../binding/atom/provider/AtomBindingInvoker.java | 4 ++-- .../atom/provider/AtomBindingListenerServlet.java | 25 +++++++++------------- .../binding/atom/utils/AtomBindingHttpUtils.java | 4 ++-- 3 files changed, 14 insertions(+), 19 deletions(-) (limited to 'sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java') diff --git a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingInvoker.java b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingInvoker.java index e569276b08..4af8c3ca14 100644 --- a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingInvoker.java +++ b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingInvoker.java @@ -206,7 +206,7 @@ class AtomBindingInvoker implements Invoker { StringWriter writer = new StringWriter(); feedEntry.writeTo(writer); // postMethod.setHeader("Content-type", "application/atom+xml; charset=utf-8"); - TUSCANY-3734 - postMethod.setHeader("Content-type", "application/atom+xml;type=entry"); + postMethod.setHeader("Content-type", "application/atom+xml"); postMethod.setEntity(new StringEntity(writer.toString())); response = httpClient.execute(postMethod); @@ -305,7 +305,7 @@ class AtomBindingInvoker implements Invoker { StringWriter writer = new StringWriter(); feedEntry.writeTo(writer); //putMethod.setHeader("Content-type", "application/atom+xml; charset=utf-8"); - TUSCANY-3734 - putMethod.setHeader("Content-type", "application/atom+xml;type=entry"); + putMethod.setHeader("Content-type", "application/atom+xml"); putMethod.setEntity(new StringEntity(writer.toString())); response = httpClient.execute(putMethod); diff --git a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingListenerServlet.java b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingListenerServlet.java index e8f1edc44a..b5b8763f3c 100644 --- a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingListenerServlet.java +++ b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/provider/AtomBindingListenerServlet.java @@ -169,9 +169,6 @@ class AtomBindingListenerServlet extends HttpServlet { // System.out.println( "AtomBindingListener.doGet cache context=" + cacheContext ); // Get the request path - //int servletPathLength = request.getContextPath().length() + request.getServletPath().length(); - //String path = URLDecoder.decode(request.getRequestURI().substring(servletPathLength), "UTF-8"); - String path = URLDecoder.decode(HTTPUtils.getRequestPath(request), "UTF-8"); logger.fine("get " + request.getRequestURI()); @@ -185,7 +182,7 @@ class AtomBindingListenerServlet extends HttpServlet { resource entries - application/atom+xml;type=entry + application/atom+xml @@ -225,10 +222,8 @@ class AtomBindingListenerServlet extends HttpServlet { } else { collection.setTitle("entries"); } - collection.addAccepts("application/atom+xml;type=feed"); - collection.addAccepts("application/json;type=feed"); - collection.addAccepts("application/atom+xml;type=entry"); - collection.addAccepts("application/json;type=entry"); + collection.addAccepts("application/atom+xml"); + collection.addAccepts("application/json"); List categories = feed.getCategories(); if ( categories != null ) { collection.addCategories(categories, false, null); @@ -239,8 +234,8 @@ class AtomBindingListenerServlet extends HttpServlet { } else { collection.setTitle("entries"); - collection.addAccepts("application/atom+xml;type=entry"); - collection.addAccepts("application/json;type=entry"); + collection.addAccepts("application/atom+xml"); + collection.addAccepts("application/json"); collection.addCategories().setFixed(false); } workspace.addCollection(collection); @@ -319,7 +314,7 @@ class AtomBindingListenerServlet extends HttpServlet { String preferredType = getContentPreference( acceptType ); if (( preferredType != null ) && ((preferredType.indexOf( "json") > -1) || (preferredType.indexOf( "JSON") > -1 ))) { // JSON response body - response.setContentType("application/json;type=feed"); + response.setContentType("application/json"); try { Abdera abdera = new Abdera(); @@ -332,7 +327,7 @@ class AtomBindingListenerServlet extends HttpServlet { } else { // Write the Atom feed - response.setContentType("application/atom+xml;type=feed"); + response.setContentType("application/atom+xml"); try { feed.getDocument().writeTo(response.getOutputStream()); } catch (IOException ioe) { @@ -449,7 +444,7 @@ class AtomBindingListenerServlet extends HttpServlet { String preferredType = getContentPreference( acceptType ); if (( preferredType != null ) && ((preferredType.indexOf( "json") > -1) || (preferredType.indexOf( "JSON") > -1 ))) { // JSON response body - response.setContentType("application/json;type=entry"); + response.setContentType("application/json"); try { Abdera abdera = new Abdera(); WriterFactory wf = abdera.getWriterFactory(); @@ -460,7 +455,7 @@ class AtomBindingListenerServlet extends HttpServlet { } } else { // XML response body - response.setContentType("application/atom+xml;type=entry"); + response.setContentType("application/atom+xml"); try { feedEntry.writeTo(getWriter(response)); } catch (IOException ioe) { @@ -657,7 +652,7 @@ class AtomBindingListenerServlet extends HttpServlet { // Write the created Atom entry response.setStatus(HttpServletResponse.SC_CREATED); - response.setContentType("application/atom+xml;type=entry"); + response.setContentType("application/atom+xml"); try { createdFeedEntry.writeTo(getWriter(response)); } catch (ParseException pe) { diff --git a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/utils/AtomBindingHttpUtils.java b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/utils/AtomBindingHttpUtils.java index 684dc044d1..f6f914c71c 100644 --- a/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/utils/AtomBindingHttpUtils.java +++ b/sca-java-2.x/trunk/modules/binding-atom-runtime/src/main/java/org/apache/tuscany/sca/binding/atom/utils/AtomBindingHttpUtils.java @@ -42,8 +42,8 @@ public class AtomBindingHttpUtils { //set Cache-Control to no-cache to avoid intermediary //proxy/reverse-proxy caches and always hit the server //that would identify if the value was current or not - response.setHeader("Cache-Control", "no-cache"); - response.setHeader("Expires", new Date(0).toGMTString()); + //response.setHeader("Cache-Control", "no-cache"); + //response.setHeader("Expires", new Date(0).toGMTString()); } -- cgit v1.2.3