You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by st...@apache.org on 2015/05/03 20:28:11 UTC

svn commit: r1677472 - in /openwebbeans/trunk: ./ webbeans-web/src/it/webcdiapp/ webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/ webbea...

Author: struberg
Date: Sun May  3 18:28:10 2015
New Revision: 1677472

URL: http://svn.apache.org/r1677472
Log:
OWB-1050 add an integration test for the whole conversation handling

Added:
    openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/
    openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationITServlet.java
    openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationalShoppingCart.java
    openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/ConversationScopedIT.java
      - copied, changed from r1676851, openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java
    openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/OwbITBase.java
Modified:
    openwebbeans/trunk/pom.xml
    openwebbeans/trunk/webbeans-web/src/it/webcdiapp/pom.xml
    openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java
    openwebbeans/trunk/webbeans-web/src/main/resources/META-INF/openwebbeans/openwebbeans.properties

Modified: openwebbeans/trunk/pom.xml
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/pom.xml?rev=1677472&r1=1677471&r2=1677472&view=diff
==============================================================================
--- openwebbeans/trunk/pom.xml (original)
+++ openwebbeans/trunk/pom.xml Sun May  3 18:28:10 2015
@@ -84,6 +84,7 @@
         <xbean.version>4.1</xbean.version>
         <arquillian.version>1.1.2.Final</arquillian.version>
         <cdi.tck.version>1.2.4.Final</cdi.tck.version>
+        <httpclient.version>4.2.1</httpclient.version>
     </properties>
     
     <mailingLists>

Modified: openwebbeans/trunk/webbeans-web/src/it/webcdiapp/pom.xml
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-web/src/it/webcdiapp/pom.xml?rev=1677472&r1=1677471&r2=1677472&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-web/src/it/webcdiapp/pom.xml (original)
+++ openwebbeans/trunk/webbeans-web/src/it/webcdiapp/pom.xml Sun May  3 18:28:10 2015
@@ -82,7 +82,7 @@
             <groupId>org.apache.httpcomponents</groupId>
             <artifactId>httpclient</artifactId>
             <version>4.2.1</version>
-            <scope>test</scope>
+            <scope>${httpclient.version}</scope>
         </dependency>
 
     </dependencies>
@@ -235,7 +235,7 @@
                     <path>/${project.build.finalName}</path>
                     <addContextWarDependencies>true</addContextWarDependencies>
                     <port>${tomcat.port.it}</port>
-                    <fork>${tomcat.fork}</fork> <!-- true is needed for IT, but if we want to start it we do not want to fork -->
+                    <fork>${tomcat.fork}</fork> <!-- true is needed for IT, but if we want to debug it we do not want to fork -->
                 </configuration>
                 <executions>
                     <execution>

Added: openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationITServlet.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationITServlet.java?rev=1677472&view=auto
==============================================================================
--- openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationITServlet.java (added)
+++ openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationITServlet.java Sun May  3 18:28:10 2015
@@ -0,0 +1,94 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openwebbeans.web.it.conversation;
+
+import javax.enterprise.inject.spi.CDI;
+import javax.servlet.ServletException;
+import javax.servlet.annotation.WebServlet;
+import javax.servlet.http.HttpServlet;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+import java.io.IOException;
+import java.util.logging.Logger;
+
+/**
+ * Test Servlet to run our conversation handling tests
+ */
+@WebServlet(urlPatterns = "/conversation/*")
+public class ConversationITServlet extends HttpServlet
+{
+    private static final Logger log = Logger.getLogger(ConversationITServlet.class.getName());
+
+    private ConversationalShoppingCart shoppingCart;
+
+
+    @Override
+    public void init() throws ServletException
+    {
+        shoppingCart = CDI.current().select(ConversationalShoppingCart.class).get();
+    }
+
+    @Override
+    protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException
+    {
+        String uri = request.getRequestURI();
+        String action = uri.substring(uri.lastIndexOf('/') + 1);
+
+        response.setContentType("text/plain");
+
+        if ("info".equals(action))
+        {
+            // nothing to do
+        }
+        else if ("invalidateSession".equals(action))
+        {
+            request.getSession().invalidate();
+        }
+        else if ("invalidateSessionAfterBeanAccess".equals(action))
+        {
+            // first touch the bean, then invalidate in the same request
+            shoppingCart.getContent();
+            request.getSession().invalidate();
+        }
+        else if ("set".equals(action))
+        {
+            String content = request.getParameter("content");
+            shoppingCart.setContent(content);
+        }
+        else if ("begin".equals(action))
+        {
+            shoppingCart.getConversation().begin();
+        }
+        else if ("end".equals(action))
+        {
+            shoppingCart.getConversation().end();
+        }
+        else
+        {
+            response.getWriter().append("error - unknown command");
+            response.setStatus(HttpServletResponse.SC_INTERNAL_SERVER_ERROR);
+        }
+
+        String msg = shoppingCart.toString();
+        log.info("action = " + action + " shoppingCart=" + shoppingCart);
+        response.getWriter().append(msg);
+        response.setStatus(HttpServletResponse.SC_OK);
+    }
+
+}

Added: openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationalShoppingCart.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationalShoppingCart.java?rev=1677472&view=auto
==============================================================================
--- openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationalShoppingCart.java (added)
+++ openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/main/java/org/apache/openwebbeans/web/it/conversation/ConversationalShoppingCart.java Sun May  3 18:28:10 2015
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.openwebbeans.web.it.conversation;
+
+import javax.enterprise.context.Conversation;
+import javax.enterprise.context.ConversationScoped;
+import javax.inject.Inject;
+import java.io.Serializable;
+
+/**
+ *
+ */
+@ConversationScoped
+public class ConversationalShoppingCart implements Serializable
+{
+    private @Inject Conversation conversation;
+
+    private String content = "empty";
+
+    public Conversation getConversation()
+    {
+        return conversation;
+    }
+
+    public String getContent()
+    {
+        return content;
+    }
+
+    public void setContent(String content)
+    {
+        this.content = content;
+    }
+
+    @Override
+    public String toString()
+    {
+        return conversation.getId() + "/" + conversation.isTransient() + "/" + content + "/" + System.identityHashCode(this);
+    }
+}
+

Copied: openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/ConversationScopedIT.java (from r1676851, openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java)
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/ConversationScopedIT.java?p2=openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/ConversationScopedIT.java&p1=openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java&r1=1676851&r2=1677472&rev=1677472&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java (original)
+++ openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/ConversationScopedIT.java Sun May  3 18:28:10 2015
@@ -18,64 +18,133 @@
  */
 package org.apache.openwebbeans.web.it;
 
-import org.apache.http.HttpResponse;
+import javax.servlet.http.HttpServletResponse;
+import java.io.BufferedReader;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
 import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
 import org.apache.http.client.methods.HttpGet;
 import org.apache.http.impl.client.DefaultHttpClient;
-
 import org.junit.Assert;
 import org.junit.Test;
 
-import java.io.BufferedReader;
-import java.io.InputStream;
-import java.io.InputStreamReader;
-
-public class RequestScopedIT
+public class ConversationScopedIT extends OwbITBase
 {
-    public static final String BASE_URL = "http://localhost:8089/webbeanswebCdiApp";
 
     @Test
     public void testRequestScoped() throws Exception
     {
         DefaultHttpClient client = new DefaultHttpClient();
-        HttpGet jspGet = new HttpGet(BASE_URL + "/index.jsp");
 
-        checkResponse(client.execute(jspGet));
-        jspGet.releaseConnection();
+        // GET http://localhost:8089/webbeanswebCdiApp/conversation/info etc
+
+        ConversationInfo previousInfo;
+        {
+            String content = httpGet(client, "conversation/info", HttpServletResponse.SC_OK);
+            ConversationInfo info = assertConversationInfo(content, "null", true, "empty", null);
+            previousInfo = info;
+        }
+
+        {
+            // once again, we like to make sure we really get different instances
+            String content = httpGet(client, "conversation/info", HttpServletResponse.SC_OK);
+            ConversationInfo info = assertConversationInfo(content, "null", true, "empty", null);
+            Assert.assertTrue(!info.instanceHash.equals(previousInfo.instanceHash));
+        }
+
+        {
+            // now we begin the transaction
+            String content = httpGet(client, "conversation/begin", HttpServletResponse.SC_OK);
+            ConversationInfo info = assertConversationInfo(content, null, false, "empty", null);
+            Assert.assertTrue(!info.instanceHash.equals(previousInfo.instanceHash));
+            Assert.assertTrue(!"null".equals(info.cid));
+            previousInfo = info;
+        }
 
-        HttpGet checkGet = new HttpGet(BASE_URL + "/check");
-        HttpResponse response = client.execute(checkGet);
-        checkResponse(response);
+        {
+            // let's look what we got.
+            String content = httpGet(client, "conversation/info?cid=" + previousInfo.cid, HttpServletResponse.SC_OK);
+            ConversationInfo info = assertConversationInfo(content, previousInfo.cid, false, "empty", previousInfo.instanceHash);
+            previousInfo = info;
+        }
 
-        HttpEntity httpEntity = response.getEntity();
-        Assert.assertNotNull(httpEntity);
+        {
+            // now let's set a value
+            String content = httpGet(client, "conversation/set?cid=" + previousInfo.cid + "&content=full", HttpServletResponse.SC_OK);
+            ConversationInfo info = assertConversationInfo(content, previousInfo.cid, false, "full", previousInfo.instanceHash);
+            previousInfo = info;
+        }
 
-        InputStream content = null;
-        try
         {
-            content = httpEntity.getContent();
-            Assert.assertNotNull(content);
-            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(content));
-            String result = bufferedReader.readLine();
-            Assert.assertNotNull(result);
-            Assert.assertEquals("2,2", result);
+            // and look again
+            String content = httpGet(client, "conversation/info?cid=" + previousInfo.cid, HttpServletResponse.SC_OK);
+            ConversationInfo info = assertConversationInfo(content, previousInfo.cid, false, "full", previousInfo.instanceHash);
+            previousInfo = info;
         }
-        finally {
-            if (content != null)
-            {
-                content.close();
-            }
+
+        {
+            // and end the conversation
+            String content = httpGet(client, "conversation/end?cid=" + previousInfo.cid, HttpServletResponse.SC_OK);
+
+            // we STILL should see 'full' and the old instance
+            // as the ConversationContext only needs to destroyed at the END of the request!
+            ConversationInfo info = assertConversationInfo(content, "null", true, "full", previousInfo.instanceHash);
+            previousInfo = info;
         }
 
+        {
+            // the last request should result in a new ConversationScoped instance
+            String content = httpGet(client, "conversation/info", HttpServletResponse.SC_OK);
+            ConversationInfo info = assertConversationInfo(content, "null", true, "empty", null);
+            Assert.assertTrue(!info.instanceHash.equals(previousInfo.instanceHash));
+        }
 
-        checkGet.releaseConnection();
     }
 
-    private void checkResponse(HttpResponse response)
+
+
+    private ConversationInfo assertConversationInfo(String content, String expectedCid, boolean expectedIsTransient, String expectedValue, Object expectedInstanceHash)
     {
-        Assert.assertNotNull(response);
-        Assert.assertNotNull(response.getStatusLine());
-        Assert.assertEquals(200, response.getStatusLine().getStatusCode());
+        Assert.assertNotNull(content);
+        ConversationInfo info = new ConversationInfo(content.split("/"));
+
+        if (expectedCid != null)
+        {
+            Assert.assertEquals(expectedCid, info.cid);
+        }
+
+        Assert.assertEquals(expectedIsTransient, info.isTransient);
+
+        if (expectedValue != null)
+        {
+            Assert.assertEquals(expectedValue, info.content);
+        }
+
+        if (expectedInstanceHash != null)
+        {
+            Assert.assertEquals(expectedInstanceHash, info.instanceHash);
+        }
+        return info;
     }
 
+
+    public static class ConversationInfo
+    {
+        public String cid;
+        public boolean isTransient;
+        public String content;
+        public String instanceHash;
+
+        public ConversationInfo(String[] info)
+        {
+            Assert.assertEquals(4, info.length);
+            cid = info[0];
+            isTransient = Boolean.parseBoolean(info[1]);
+            content = info[2];
+            instanceHash = info[3];
+
+        }
+    }
 }

Added: openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/OwbITBase.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/OwbITBase.java?rev=1677472&view=auto
==============================================================================
--- openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/OwbITBase.java (added)
+++ openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/OwbITBase.java Sun May  3 18:28:10 2015
@@ -0,0 +1,187 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements.  See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License.  You may obtain a copy of the License at
+ *
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.apache.openwebbeans.web.it;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+import java.util.Map;
+import java.util.Properties;
+import java.util.logging.Logger;
+
+import org.apache.http.HttpEntity;
+import org.apache.http.HttpResponse;
+import org.apache.http.client.methods.HttpGet;
+import org.apache.http.impl.client.DefaultHttpClient;
+import org.apache.webbeans.util.StringUtil;
+import org.junit.Assert;
+
+/**
+ */
+public class OwbITBase
+{
+    private static final Logger log = Logger.getLogger(OwbITBase.class.getName());
+
+    private static String host = null;
+    private static String port = null;
+    private static String contextPath = null;
+
+    private static String baseUrl = null;
+
+
+    protected String getPageUrl(String path)
+    {
+        return getPageUrl(path, null);
+    }
+
+    protected String getPageUrl(String path, Properties params)
+    {
+        String baseUrl = getBaseUrl();
+        StringBuilder sb = new StringBuilder(baseUrl);
+        if (!baseUrl.endsWith("/") && !path.startsWith("/"))
+        {
+            sb.append('/');
+        }
+        sb.append(path.startsWith("/") ? path.substring(1) : path);
+
+        if (params != null)
+        {
+            boolean containsParams = path.contains("?");
+            for (Map.Entry paramEntry : params.entrySet())
+            {
+                sb.append(containsParams ? "&" : "?");
+                sb.append(paramEntry.getKey()).append("=").append(paramEntry.getValue());
+                containsParams = true;
+            }
+        }
+
+        return sb.toString();
+    }
+
+    protected String getBaseUrl()
+    {
+        if (baseUrl == null)
+        {
+            StringBuilder sb = new StringBuilder(getHost());
+            String port = getPort();
+            if (port != null)
+            {
+                sb.append(':').append(port);
+            }
+
+            sb.append('/');
+
+            String contextPath = getContextPath();
+            if (contextPath != null)
+            {
+                sb.append(contextPath).append("/");
+            }
+
+            baseUrl = sb.toString();
+        }
+
+
+        return baseUrl;
+    }
+
+
+    protected String getHost()
+    {
+        if (host == null)
+        {
+            host = getConfiguration("owb.it.host", "http://localhost");
+        }
+        return host;
+    }
+
+    protected String getPort()
+    {
+        if (port == null)
+        {
+            port = getConfiguration("owb.it.port", "8089");
+        }
+        return port;
+    }
+
+    protected String getContextPath()
+    {
+        if (contextPath == null)
+        {
+            contextPath = getConfiguration("owb.it.contextPath", "webbeanswebCdiApp");
+        }
+        return contextPath;
+    }
+
+    protected String getConfiguration(String key, String defaultValue)
+    {
+        String val = System.getProperty(key);
+        if (StringUtil.isBlank(val))
+        {
+            val = System.getenv(key);
+        }
+        if (StringUtil.isBlank(val))
+        {
+            val = defaultValue;
+        }
+
+        return val;
+    }
+
+    protected String httpGet(DefaultHttpClient client, String page, int expectedHttpCode) throws IOException
+    {
+        String pageUrl = getPageUrl(page);
+        log.info("Sending GET: " + pageUrl);
+
+        HttpGet getRequest = new HttpGet(pageUrl);
+        HttpResponse response = client.execute(getRequest);
+        Assert.assertNotNull(response);
+
+        int statusCode = response.getStatusLine().getStatusCode();
+        Assert.assertEquals(expectedHttpCode, statusCode);
+
+        HttpEntity httpEntity = response.getEntity();
+        Assert.assertNotNull(httpEntity);
+
+        StringBuffer sb = new StringBuffer();
+
+        InputStream inputStream = null;
+        try
+        {
+            inputStream = httpEntity.getContent();
+            Assert.assertNotNull(inputStream);
+            BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream));
+            String line;
+            while ((line = bufferedReader.readLine()) != null)
+            {
+                sb.append(line).append('\n');
+            }
+        }
+        finally {
+            if (inputStream != null)
+            {
+                inputStream.close();
+            }
+        }
+
+        String content = sb.toString();
+        log.info("  status=" + statusCode + " content: " + content);
+
+        getRequest.releaseConnection();
+        return content;
+    }
+}

Modified: openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java?rev=1677472&r1=1677471&r2=1677472&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java (original)
+++ openwebbeans/trunk/webbeans-web/src/it/webcdiapp/src/test/java/org/apache/openwebbeans/web/it/RequestScopedIT.java Sun May  3 18:28:10 2015
@@ -30,21 +30,24 @@ import java.io.BufferedReader;
 import java.io.InputStream;
 import java.io.InputStreamReader;
 
-public class RequestScopedIT
+public class RequestScopedIT extends OwbITBase
 {
-    public static final String BASE_URL = "http://localhost:8089/webbeanswebCdiApp";
 
     @Test
     public void testRequestScoped() throws Exception
     {
         DefaultHttpClient client = new DefaultHttpClient();
-        HttpGet jspGet = new HttpGet(BASE_URL + "/index.jsp");
 
+        HttpGet resetGet = new HttpGet(getPageUrl("/check?reset=true"));
+        HttpResponse response = client.execute(resetGet);
+        resetGet.releaseConnection();
+
+        HttpGet jspGet = new HttpGet(getPageUrl("/index.jsp"));
         checkResponse(client.execute(jspGet));
         jspGet.releaseConnection();
 
-        HttpGet checkGet = new HttpGet(BASE_URL + "/check");
-        HttpResponse response = client.execute(checkGet);
+        HttpGet checkGet = new HttpGet(getPageUrl("/check"));
+        response = client.execute(checkGet);
         checkResponse(response);
 
         HttpEntity httpEntity = response.getEntity();

Modified: openwebbeans/trunk/webbeans-web/src/main/resources/META-INF/openwebbeans/openwebbeans.properties
URL: http://svn.apache.org/viewvc/openwebbeans/trunk/webbeans-web/src/main/resources/META-INF/openwebbeans/openwebbeans.properties?rev=1677472&r1=1677471&r2=1677472&view=diff
==============================================================================
--- openwebbeans/trunk/webbeans-web/src/main/resources/META-INF/openwebbeans/openwebbeans.properties (original)
+++ openwebbeans/trunk/webbeans-web/src/main/resources/META-INF/openwebbeans/openwebbeans.properties Sun May  3 18:28:10 2015
@@ -44,7 +44,7 @@ org.apache.webbeans.spi.ContextsService=
 ################################################################################################
 
 ################################## Application Development is JSP ##############################
-#Used to register WebBeansELResolver with JSP EL
+# Used to register WebBeansELResolver with JSP EL
 org.apache.webbeans.application.jsp=false
 ################################################################################################
 
@@ -54,3 +54,16 @@ org.apache.webbeans.application.jsp=fals
 #
 org.apache.webbeans.proxy.mapping.javax.enterprise.context.RequestScoped=org.apache.webbeans.web.intercept.RequestScopedBeanInterceptorHandler
 ################################################################################################
+
+################################### Default Conversation Service ###############################
+# Servlet related implementation of org.apache.webbeans.corespi.ConversationService.
+# This one does support conversation propagation via cid request parameter.
+# This will get overwritten in the JSF plugins
+org.apache.webbeans.spi.ConversationService=org.apache.webbeans.web.context.WebConversationService
+################################################################################################
+
+################################## Application Development is JSP ##############################
+# Whether conversations are supported or not
+# In webapps we now support conversations by default
+org.apache.webbeans.application.supportsConversation=true
+################################################################################################