@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2012 the original author or authors.
|
* Copyright 2002-2014 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@@ -23,10 +23,11 @@ import org.springframework.http.HttpOutputMessage;
|
|||||||
import org.springframework.http.HttpRequest;
|
import org.springframework.http.HttpRequest;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents a client-side HTTP request. Created via an implementation of the {@link ClientHttpRequestFactory}.
|
* Represents a client-side HTTP request.
|
||||||
|
* Created via an implementation of the {@link ClientHttpRequestFactory}.
|
||||||
*
|
*
|
||||||
* <p>A {@code ClientHttpRequest} can be {@linkplain #execute() executed}, getting a
|
* <p>A {@code ClientHttpRequest} can be {@linkplain #execute() executed},
|
||||||
* {@link ClientHttpResponse} which can be read from.
|
* receiving a {@link ClientHttpResponse} which can be read from.
|
||||||
*
|
*
|
||||||
* @author Arjen Poutsma
|
* @author Arjen Poutsma
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2012 the original author or authors.
|
* Copyright 2002-2014 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@@ -23,10 +23,11 @@ import org.springframework.http.HttpInputMessage;
|
|||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Represents a client-side HTTP response. Obtained via an calling of the {@link ClientHttpRequest#execute()}.
|
* Represents a client-side HTTP response.
|
||||||
|
* Obtained via an calling of the {@link ClientHttpRequest#execute()}.
|
||||||
*
|
*
|
||||||
* <p>A {@code ClientHttpResponse} must be {@linkplain #close() closed}, typically in a
|
* <p>A {@code ClientHttpResponse} must be {@linkplain #close() closed},
|
||||||
* {@code finally} block.
|
* typically in a {@code finally} block.
|
||||||
*
|
*
|
||||||
* @author Arjen Poutsma
|
* @author Arjen Poutsma
|
||||||
* @since 3.0
|
* @since 3.0
|
||||||
@@ -55,7 +56,7 @@ public interface ClientHttpResponse extends HttpInputMessage, Closeable {
|
|||||||
String getStatusText() throws IOException;
|
String getStatusText() throws IOException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Closes this response, freeing any resources created.
|
* Close this response, freeing any resources created.
|
||||||
*/
|
*/
|
||||||
@Override
|
@Override
|
||||||
void close();
|
void close();
|
||||||
|
|||||||
@@ -73,7 +73,7 @@ public class FreeMarkerMacroTests {
|
|||||||
|
|
||||||
// final Template expectedTemplate = new Template();
|
// final Template expectedTemplate = new Template();
|
||||||
fc = new FreeMarkerConfigurer();
|
fc = new FreeMarkerConfigurer();
|
||||||
fc.setTemplateLoaderPaths(new String[] { "classpath:/", "file://" + System.getProperty("java.io.tmpdir") });
|
fc.setTemplateLoaderPaths("classpath:/", "file://" + System.getProperty("java.io.tmpdir"));
|
||||||
fc.afterPropertiesSet();
|
fc.afterPropertiesSet();
|
||||||
|
|
||||||
wac.getDefaultListableBeanFactory().registerSingleton("freeMarkerConfigurer", fc);
|
wac.getDefaultListableBeanFactory().registerSingleton("freeMarkerConfigurer", fc);
|
||||||
@@ -86,6 +86,7 @@ public class FreeMarkerMacroTests {
|
|||||||
response = new MockHttpServletResponse();
|
response = new MockHttpServletResponse();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@Test
|
@Test
|
||||||
public void testExposeSpringMacroHelpers() throws Exception {
|
public void testExposeSpringMacroHelpers() throws Exception {
|
||||||
FreeMarkerView fv = new FreeMarkerView() {
|
FreeMarkerView fv = new FreeMarkerView() {
|
||||||
@@ -128,7 +129,8 @@ public class FreeMarkerMacroTests {
|
|||||||
|
|
||||||
try {
|
try {
|
||||||
fv.render(model, request, response);
|
fv.render(model, request, response);
|
||||||
} catch (Exception ex) {
|
}
|
||||||
|
catch (Exception ex) {
|
||||||
assertTrue(ex instanceof ServletException);
|
assertTrue(ex instanceof ServletException);
|
||||||
assertTrue(ex.getMessage().contains(FreeMarkerView.SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE));
|
assertTrue(ex.getMessage().contains(FreeMarkerView.SPRING_MACRO_REQUEST_CONTEXT_ATTRIBUTE));
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
/*
|
/*
|
||||||
* Copyright 2002-2013 the original author or authors.
|
* Copyright 2002-2014 the original author or authors.
|
||||||
*
|
*
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
* you may not use this file except in compliance with the License.
|
* you may not use this file except in compliance with the License.
|
||||||
@@ -23,10 +23,14 @@ import java.io.Writer;
|
|||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
|
||||||
|
import freemarker.ext.servlet.AllHttpScopesHashModel;
|
||||||
|
import freemarker.template.Configuration;
|
||||||
|
import freemarker.template.Template;
|
||||||
|
import freemarker.template.TemplateException;
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
import org.springframework.context.ApplicationContextException;
|
import org.springframework.context.ApplicationContextException;
|
||||||
import org.springframework.mock.web.test.MockHttpServletRequest;
|
import org.springframework.mock.web.test.MockHttpServletRequest;
|
||||||
import org.springframework.mock.web.test.MockHttpServletResponse;
|
import org.springframework.mock.web.test.MockHttpServletResponse;
|
||||||
@@ -40,11 +44,6 @@ import org.springframework.web.servlet.view.AbstractView;
|
|||||||
import org.springframework.web.servlet.view.InternalResourceView;
|
import org.springframework.web.servlet.view.InternalResourceView;
|
||||||
import org.springframework.web.servlet.view.RedirectView;
|
import org.springframework.web.servlet.view.RedirectView;
|
||||||
|
|
||||||
import freemarker.ext.servlet.AllHttpScopesHashModel;
|
|
||||||
import freemarker.template.Configuration;
|
|
||||||
import freemarker.template.Template;
|
|
||||||
import freemarker.template.TemplateException;
|
|
||||||
|
|
||||||
import static org.junit.Assert.*;
|
import static org.junit.Assert.*;
|
||||||
import static org.mockito.BDDMockito.*;
|
import static org.mockito.BDDMockito.*;
|
||||||
|
|
||||||
@@ -70,7 +69,7 @@ public class FreeMarkerViewTests {
|
|||||||
}
|
}
|
||||||
catch (ApplicationContextException ex) {
|
catch (ApplicationContextException ex) {
|
||||||
// Check there's a helpful error message
|
// Check there's a helpful error message
|
||||||
assertTrue(ex.getMessage().indexOf("FreeMarkerConfig") != -1);
|
assertTrue(ex.getMessage().contains("FreeMarkerConfig"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -83,7 +82,7 @@ public class FreeMarkerViewTests {
|
|||||||
}
|
}
|
||||||
catch (IllegalArgumentException ex) {
|
catch (IllegalArgumentException ex) {
|
||||||
// Check there's a helpful error message
|
// Check there's a helpful error message
|
||||||
assertTrue(ex.getMessage().indexOf("url") != -1);
|
assertTrue(ex.getMessage().contains("url"));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -94,7 +93,7 @@ public class FreeMarkerViewTests {
|
|||||||
WebApplicationContext wac = mock(WebApplicationContext.class);
|
WebApplicationContext wac = mock(WebApplicationContext.class);
|
||||||
MockServletContext sc = new MockServletContext();
|
MockServletContext sc = new MockServletContext();
|
||||||
|
|
||||||
Map configs = new HashMap();
|
Map<String, FreeMarkerConfig> configs = new HashMap<String, FreeMarkerConfig>();
|
||||||
FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();
|
FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();
|
||||||
configurer.setConfiguration(new TestConfiguration());
|
configurer.setConfiguration(new TestConfiguration());
|
||||||
configs.put("configurer", configurer);
|
configs.put("configurer", configurer);
|
||||||
@@ -110,7 +109,7 @@ public class FreeMarkerViewTests {
|
|||||||
request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, new AcceptHeaderLocaleResolver());
|
request.setAttribute(DispatcherServlet.LOCALE_RESOLVER_ATTRIBUTE, new AcceptHeaderLocaleResolver());
|
||||||
HttpServletResponse response = new MockHttpServletResponse();
|
HttpServletResponse response = new MockHttpServletResponse();
|
||||||
|
|
||||||
Map model = new HashMap();
|
Map<String, Object> model = new HashMap<String, Object>();
|
||||||
model.put("myattr", "myvalue");
|
model.put("myattr", "myvalue");
|
||||||
fv.render(model, request, response);
|
fv.render(model, request, response);
|
||||||
|
|
||||||
@@ -124,7 +123,7 @@ public class FreeMarkerViewTests {
|
|||||||
WebApplicationContext wac = mock(WebApplicationContext.class);
|
WebApplicationContext wac = mock(WebApplicationContext.class);
|
||||||
MockServletContext sc = new MockServletContext();
|
MockServletContext sc = new MockServletContext();
|
||||||
|
|
||||||
Map configs = new HashMap();
|
Map<String, FreeMarkerConfig> configs = new HashMap<String, FreeMarkerConfig>();
|
||||||
FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();
|
FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();
|
||||||
configurer.setConfiguration(new TestConfiguration());
|
configurer.setConfiguration(new TestConfiguration());
|
||||||
configs.put("configurer", configurer);
|
configs.put("configurer", configurer);
|
||||||
@@ -141,7 +140,7 @@ public class FreeMarkerViewTests {
|
|||||||
HttpServletResponse response = new MockHttpServletResponse();
|
HttpServletResponse response = new MockHttpServletResponse();
|
||||||
response.setContentType("myContentType");
|
response.setContentType("myContentType");
|
||||||
|
|
||||||
Map model = new HashMap();
|
Map<String, Object> model = new HashMap<String, Object>();
|
||||||
model.put("myattr", "myvalue");
|
model.put("myattr", "myvalue");
|
||||||
fv.render(model, request, response);
|
fv.render(model, request, response);
|
||||||
|
|
||||||
@@ -185,7 +184,7 @@ public class FreeMarkerViewTests {
|
|||||||
@Override
|
@Override
|
||||||
public Template getTemplate(String name, final Locale locale) throws IOException {
|
public Template getTemplate(String name, final Locale locale) throws IOException {
|
||||||
if (name.equals("templateName") || name.equals("prefix_test_suffix")) {
|
if (name.equals("templateName") || name.equals("prefix_test_suffix")) {
|
||||||
return new Template(name, new StringReader("test")) {
|
return new Template(name, new StringReader("test"), this) {
|
||||||
@Override
|
@Override
|
||||||
public void process(Object model, Writer writer) throws TemplateException, IOException {
|
public void process(Object model, Writer writer) throws TemplateException, IOException {
|
||||||
assertEquals(Locale.US, locale);
|
assertEquals(Locale.US, locale);
|
||||||
|
|||||||
Reference in New Issue
Block a user