Title: [632] trunk/rails-integration: Added $servlet_context

Diff

Modified: trunk/rails-integration/pom.xml (631 => 632)


--- trunk/rails-integration/pom.xml	2007-06-14 21:13:58 UTC (rev 631)
+++ trunk/rails-integration/pom.xml	2007-06-17 18:56:01 UTC (rev 632)
@@ -45,7 +45,7 @@
     <dependency>
       <groupId>org.jruby</groupId>
       <artifactId>jruby-complete</artifactId>
-      <version>0.9.9</version>
+      <version>1.0</version>
     </dependency>
     <dependency>
       <groupId>bouncycastle</groupId>

Added: trunk/rails-integration/samples/helloworld-1.2.3/app/controllers/show_context_controller.rb (0 => 632)


--- trunk/rails-integration/samples/helloworld-1.2.3/app/controllers/show_context_controller.rb	                        (rev 0)
+++ trunk/rails-integration/samples/helloworld-1.2.3/app/controllers/show_context_controller.rb	2007-06-17 18:56:01 UTC (rev 632)
@@ -0,0 +1,7 @@
+class ShowContextController < ApplicationController
+  include Java
+  import javax.servlet.ServletContext
+  def index
+    render_text $servlet_context.server_info
+  end
+end

Modified: trunk/rails-integration/src/main/java/org/jruby/webapp/RailsFactory.java (631 => 632)


--- trunk/rails-integration/src/main/java/org/jruby/webapp/RailsFactory.java	2007-06-14 21:13:58 UTC (rev 631)
+++ trunk/rails-integration/src/main/java/org/jruby/webapp/RailsFactory.java	2007-06-17 18:56:01 UTC (rev 632)
@@ -109,6 +109,9 @@
 		// 9419 - ensure that ARGV is set
 		runtime.evalScript("ARGV ||= []");
 
+		// make servlet context accessible
+		runtime.defineReadonlyVariable("$servlet_context", JavaEmbedUtils.javaToRuby(runtime, context));
+
 		// test Gems
 		try {
 			runtime.getLoadService().require("rubygems");

Modified: trunk/rails-integration/src/test/java/org/jruby/webapp/RailsServletTest.java (631 => 632)


--- trunk/rails-integration/src/test/java/org/jruby/webapp/RailsServletTest.java	2007-06-14 21:13:58 UTC (rev 631)
+++ trunk/rails-integration/src/test/java/org/jruby/webapp/RailsServletTest.java	2007-06-17 18:56:01 UTC (rev 632)
@@ -47,6 +47,14 @@
 		WebResponse response = client.getResponse(getContextUrl("helloworld") + "/session/list");
 		assertEquals("response code", 200, response.getResponseCode());
 	}
+	
+	public void testServletContext() throws Exception
+	{
+		WebClient client = createHelloWorld();
+		WebResponse response = client.getResponse(getContextUrl("helloworld") + "/show_context/");
+		assertEquals("response code", 200, response.getResponseCode());
+		assertTrue(response.getText().indexOf("Tomcat") != -1);
+	}
 
 	public void testSessionPost() throws Exception {
 		WebClient client = createHelloWorld();
_______________________________________________
Jruby-extras-devel mailing list
[email protected]
http://rubyforge.org/mailman/listinfo/jruby-extras-devel

Reply via email to