This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git
The following commit(s) were added to refs/heads/master by this push:
new a75b7f9 Swagger UI enhancements.
a75b7f9 is described below
commit a75b7f976eb12a18dd928f440caeed9175e21203
Author: JamesBognar <[email protected]>
AuthorDate: Sat Apr 14 15:33:51 2018 -0400
Swagger UI enhancements.
---
.../org/apache/juneau/config/vars/ConfigVar.java | 2 +-
.../org/apache/juneau/dto/swagger/ui/SwaggerUI.css | 1 +
.../src/main/java/org/apache/juneau/ClassMeta.java | 6 ++
.../org/apache/juneau/svl/VarResolverSession.java | 5 +-
juneau-doc/src/main/javadoc/overview.html | 2 +-
.../files/htdocs/styles/SwaggerUI.css | 1 +
.../juneau/examples/rest/AtomFeedResource.java | 23 ++--
.../examples/rest/AtomFeedResource_example.json | 116 +++++++++++++--------
.../files/htdocs/styles/SwaggerUI.css | 1 +
.../apache/juneau/rest/BasicRestInfoProvider.java | 8 +-
.../org/apache/juneau/rest/RestContextBuilder.java | 5 +-
.../java/org/apache/juneau/rest/vars/FileVar.java | 16 ++-
.../apache/juneau/rest/vars/LocalizationVar.java | 2 +-
.../juneau/rest/vars/RequestAttributeVar.java | 2 +-
.../juneau/rest/vars/RequestFormDataVar.java | 2 +-
.../apache/juneau/rest/vars/RequestHeaderVar.java | 2 +-
.../apache/juneau/rest/vars/RequestPathVar.java | 2 +-
.../apache/juneau/rest/vars/RequestQueryVar.java | 2 +-
.../org/apache/juneau/rest/vars/RequestVar.java | 2 +-
.../org/apache/juneau/rest/vars/RestInfoVar.java | 2 +-
.../juneau/rest/vars/SerializedRequestAttrVar.java | 2 +-
.../juneau/rest/vars/ServletInitParamVar.java | 2 +-
.../java/org/apache/juneau/rest/vars/UrlVar.java | 2 +-
.../org/apache/juneau/rest/vars/WidgetVar.java | 2 +-
24 files changed, 135 insertions(+), 75 deletions(-)
diff --git
a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/vars/ConfigVar.java
b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/vars/ConfigVar.java
index f6eebc8..c7e0829 100644
---
a/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/vars/ConfigVar.java
+++
b/juneau-core/juneau-config/src/main/java/org/apache/juneau/config/vars/ConfigVar.java
@@ -68,6 +68,6 @@ public class ConfigVar extends DefaultingVar {
@Override /* Var */
public String resolve(VarResolverSession session, String key) {
- return session.getSessionObject(Config.class,
SESSION_config).getString(key);
+ return session.getSessionObject(Config.class, SESSION_config,
true).getString(key);
}
}
diff --git
a/juneau-core/juneau-dto/src/main/resources/org/apache/juneau/dto/swagger/ui/SwaggerUI.css
b/juneau-core/juneau-dto/src/main/resources/org/apache/juneau/dto/swagger/ui/SwaggerUI.css
index 7a80655..b118da2 100644
---
a/juneau-core/juneau-dto/src/main/resources/org/apache/juneau/dto/swagger/ui/SwaggerUI.css
+++
b/juneau-core/juneau-dto/src/main/resources/org/apache/juneau/dto/swagger/ui/SwaggerUI.css
@@ -281,6 +281,7 @@ td.parameter-value, td.response-value {
max-width: 800px;
max-height: 800px;
text-overflow: auto;
+ overflow: auto;
}
.op-block-contents .example.active {
diff --git
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java
index 57132de..a3e6ddc 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/ClassMeta.java
@@ -1013,6 +1013,12 @@ public final class ClassMeta<T> implements Type {
if (isCollectionOrArray() &&
StringUtils.isObjectList(s, false))
return
JsonParser.DEFAULT.parse(s, this);
}
+ if (example instanceof Map && isMapOrBean()) {
+ return
JsonParser.DEFAULT.parse(JsonSerializer.DEFAULT_LAX_READABLE.toString(example),
this);
+ }
+ if (example instanceof Collection &&
isCollectionOrArray()) {
+ return
JsonParser.DEFAULT.parse(JsonSerializer.DEFAULT_LAX_READABLE.serialize(example),
this);
+ }
}
if (exampleMethod != null)
return (T)invokeMethodFuzzy(exampleMethod,
null, session);
diff --git
a/juneau-core/juneau-svl/src/main/java/org/apache/juneau/svl/VarResolverSession.java
b/juneau-core/juneau-svl/src/main/java/org/apache/juneau/svl/VarResolverSession.java
index a553b0d..32b69c4 100644
---
a/juneau-core/juneau-svl/src/main/java/org/apache/juneau/svl/VarResolverSession.java
+++
b/juneau-core/juneau-svl/src/main/java/org/apache/juneau/svl/VarResolverSession.java
@@ -379,13 +379,14 @@ public class VarResolverSession {
*
* @param c The class type to cast to.
* @param name The name of the session object.
+ * @param throwNotSetException Throw a {@link VarResolverException} if
the session object is not set.
* @return
* The session object.
* <br>Never <jk>null</jk>.
* @throws VarResolverException If session object with specified name
does not exist.
*/
@SuppressWarnings("unchecked")
- public <T> T getSessionObject(Class<T> c, String name) {
+ public <T> T getSessionObject(Class<T> c, String name, boolean
throwNotSetException) {
T t = null;
try {
t = (T)sessionObjects.get(name);
@@ -397,7 +398,7 @@ public class VarResolverSession {
throw new VarResolverException(e,
"Session object ''{0}'' or context object
''SvlContext.{0}'' could not be converted to type ''{1}''.", name, c);
}
- if (t == null)
+ if (t == null && throwNotSetException)
throw new VarResolverException(
"Session object ''{0}'' or context object
''SvlContext.{0}'' not found.", name);
return t;
diff --git a/juneau-doc/src/main/javadoc/overview.html
b/juneau-doc/src/main/javadoc/overview.html
index 7313a9e..931684b 100644
--- a/juneau-doc/src/main/javadoc/overview.html
+++ b/juneau-doc/src/main/javadoc/overview.html
@@ -13302,7 +13302,7 @@
<td rowspan='14'
style='text-align:center;font-weight:bold;padding:20px;'
class='code'>juneau-rest-server</td>
<td>{@link
org.apache.juneau.rest.vars.FileVar}</td>
<td class='code'>$F{path[,default]}}</td>
- <td
style='text-align:center;font-weight:bold'>no</td>
+ <td
style='text-align:center;font-weight:bold'>yes</td>
<td
style='text-align:center;font-weight:bold'>yes</td>
</tr>
<tr class='dark'>
diff --git
a/juneau-examples/juneau-examples-rest/files/htdocs/styles/SwaggerUI.css
b/juneau-examples/juneau-examples-rest/files/htdocs/styles/SwaggerUI.css
index 7a80655..b118da2 100644
--- a/juneau-examples/juneau-examples-rest/files/htdocs/styles/SwaggerUI.css
+++ b/juneau-examples/juneau-examples-rest/files/htdocs/styles/SwaggerUI.css
@@ -281,6 +281,7 @@ td.parameter-value, td.response-value {
max-width: 800px;
max-height: 800px;
text-overflow: auto;
+ overflow: auto;
}
.op-block-contents .example.active {
diff --git
a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/AtomFeedResource.java
b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/AtomFeedResource.java
index 08395fa..f91c4a3 100644
---
a/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/AtomFeedResource.java
+++
b/juneau-examples/juneau-examples-rest/src/main/java/org/apache/juneau/examples/rest/AtomFeedResource.java
@@ -48,7 +48,8 @@ import org.apache.juneau.rest.widget.*;
properties={
@Property(name=WSERIALIZER_quoteChar, value="'"),
@Property(name=RDF_rdfxml_tab, value="5"),
- @Property(name=RDF_addRootProperty, value="true")
+ @Property(name=RDF_addRootProperty, value="true"),
+ @Property(name=BEAN_examples,
value="{'org.apache.juneau.dto.atom.Feed': $F{AtomFeedResource_example.json}}")
},
encoders=GzipEncoder.class,
swagger={
@@ -104,19 +105,21 @@ public class AtomFeedResource extends
BasicRestServletJena {
}
}
- /**
- * GET request handler
- */
- @RestMethod(name=GET, path="/", summary="Get the sample ATOM feed")
+ @RestMethod(
+ name=GET,
+ path="/",
+ summary="Get the sample ATOM feed"
+ )
public Feed getFeed() throws Exception {
return feed;
}
- /**
- * PUT request handler.
- * Replaces the feed with the specified content, and then mirrors it as
the response.
- */
- @RestMethod(name=PUT, path="/", summary="Overwrite the sample ATOM
feed")
+ @RestMethod(
+ name=PUT,
+ path="/",
+ summary="Overwrite the sample ATOM feed",
+ description="Replaces the feed with the specified content, and
then mirrors it as the response."
+ )
public Feed setFeed(@Body Feed feed) throws Exception {
this.feed = feed;
return feed;
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/ServletInitParamVar.java
b/juneau-examples/juneau-examples-rest/src/main/resources/org/apache/juneau/examples/rest/AtomFeedResource_example.json
similarity index 52%
copy from
juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/ServletInitParamVar.java
copy to
juneau-examples/juneau-examples-rest/src/main/resources/org/apache/juneau/examples/rest/AtomFeedResource_example.json
index 0ab528b..e4c0e51 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/ServletInitParamVar.java
+++
b/juneau-examples/juneau-examples-rest/src/main/resources/org/apache/juneau/examples/rest/AtomFeedResource_example.json
@@ -10,47 +10,77 @@
// * "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.juneau.rest.vars;
-
-import org.apache.juneau.rest.*;
-import org.apache.juneau.svl.*;
-
-/**
- * Servlet init parameter variable resolver.
- *
- * <p>
- * The format for this var is <js>"$I{key[,defaultValue]}"</js>.
- *
- * <p>
- * This variable resolver requires that a {@link RestRequest} object be set as
a context object on the resolver or a
- * session object on the resolver session.
- *
- * <p>
- * Values are pulled from the {@link RestServlet#getInitParameter(String)}
method.
- *
- * <p>
- * Since this is a {@link SimpleVar}, any variables contained in the result
will be recursively resolved.
- * Likewise, if the arguments contain any variables, those will be resolved
before they are passed to this var.
- *
- * <h5 class='section'>See Also:</h5>
- * <ul>
- * <li class='link'><a class="doclink"
href="../../../../../overview-summary.html#juneau-rest-server.SvlVariables">Overview
> juneau-rest-server > SVL Variables</a>
- * </ul>
- */
-public class ServletInitParamVar extends DefaultingVar {
-
- /** The name of this variable. */
- public static final String NAME = "I";
-
- /**
- * Constructor.
- */
- public ServletInitParamVar() {
- super(NAME);
+{
+ id: {
+ text: 'tag:juneau.sample.com,2013:1'
+ },
+ title: {
+ text: 'Juneau ATOM specification'
+ },
+ links: [
+ {
+ type: 'text/html',
+ href: 'http://www.sample.com/',
+ hreflang: 'en',
+ rel: 'alternate'
+ },
+ {
+ type: 'application/atom+xml',
+ href: 'http://www.sample.com/feed.atom',
+ rel: 'self'
+ }
+ ],
+ updated: '2013-05-08T12:29:29Z',
+ entries: [
+ {
+ id: {
+ text: 'tag:juneau.sample.com,2013:1.2345'
+ },
+ title: {
+ text: 'Juneau ATOM specification snapshot'
+ },
+ links: [
+ {
+ type: 'text/html',
+ href:
'http://www.sample.com/2012/05/08/juneau.atom',
+ rel: 'alternate'
+ },
+ {
+ type: 'audio/mpeg',
+ length: 1337,
+ href:
'http://www.sample.com/audio/juneau_podcast.mp3',
+ rel: 'enclosure'
+ }
+ ],
+ authors: [
+ {
+ name: 'James Bognar',
+ uri: 'http://www.sample.com/',
+ email: '[email protected]'
+ }
+ ],
+ contributors: [
+ {
+ name: 'Barry M. Caceres'
+ }
+ ],
+ updated: '2013-05-08T12:29:29Z',
+ content: {
+ base: 'http://www.apache.org/',
+ lang: 'en',
+ type: 'xhtml',
+ text: '<div><p>[Update: Juneau supports
ATOM.]</p></div>'
+ },
+ published: '2013-05-08T12:29:29Z'
+ }
+ ],
+ generator: {
+ version: '1.0',
+ uri: 'http://juneau.apache.org/',
+ text: 'Juneau'
+ },
+ subtitle: {
+ type: 'html',
+ text: 'A <em>lot</em> of effort went into making this
effortless'
}
-
- @Override /* Parameter */
- public String resolve(VarResolverSession session, String key) {
- return session.getSessionObject(RestRequest.class,
RequestVar.SESSION_req).getContext().getServletInitParameter(key);
- }
-}
+}
\ No newline at end of file
diff --git
a/juneau-microservice/juneau-microservice-template/files/htdocs/styles/SwaggerUI.css
b/juneau-microservice/juneau-microservice-template/files/htdocs/styles/SwaggerUI.css
index 7a80655..b118da2 100644
---
a/juneau-microservice/juneau-microservice-template/files/htdocs/styles/SwaggerUI.css
+++
b/juneau-microservice/juneau-microservice-template/files/htdocs/styles/SwaggerUI.css
@@ -281,6 +281,7 @@ td.parameter-value, td.response-value {
max-width: 800px;
max-height: 800px;
text-overflow: auto;
+ overflow: auto;
}
.op-block-contents .example.active {
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
index c65e2fa..ae8d387 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/BasicRestInfoProvider.java
@@ -610,8 +610,12 @@ public class BasicRestInfoProvider implements
RestInfoProvider {
Serializer s2 =
sm.getSerializers().getSerializer(mt);
if (s2 != null) {
SerializerSessionArgs args =
new SerializerSessionArgs(sprops, req.getJavaMethod(), req.getLocale(), null,
mt, req.getUriContext());
- String eVal =
s2.createSession(args).serializeToString(example);
-
examples.put(s2.getMediaTypes()[0].toString(), eVal);
+ try {
+ String eVal =
s2.createSession(args).serializeToString(example);
+
examples.put(s2.getMediaTypes()[0].toString(), eVal);
+ } catch (Exception e) {
+
System.err.println("Could not serialize to media type ["+mt+"]: " +
e.getLocalizedMessage());
+ }
}
}
}
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
index c9066be..1d2b66c 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/RestContextBuilder.java
@@ -36,6 +36,7 @@ import org.apache.juneau.internal.*;
import org.apache.juneau.parser.*;
import org.apache.juneau.rest.annotation.*;
import org.apache.juneau.rest.response.*;
+import org.apache.juneau.rest.vars.*;
import org.apache.juneau.rest.widget.*;
import org.apache.juneau.serializer.*;
import org.apache.juneau.svl.*;
@@ -144,7 +145,9 @@ public class RestContextBuilder extends BeanContextBuilder
implements ServletCon
htmlDocBuilder = new HtmlDocBuilder(properties);
varResolverBuilder = new VarResolverBuilder()
.defaultVars()
- .vars(ConfigVar.class);
+ .vars(ConfigVar.class)
+ .vars(FileVar.class)
+ .contextObject("crm", new
ClasspathResourceManager(resourceClass));
VarResolver vr = varResolverBuilder.build();
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java
index 384c81b..b90b3ca 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/FileVar.java
@@ -68,6 +68,7 @@ import org.apache.juneau.utils.*;
public class FileVar extends DefaultingVar {
private static final String SESSION_req = "req";
+ private static final String SESSION_crm = "crm";
/**
* The name of this variable.
@@ -83,8 +84,17 @@ public class FileVar extends DefaultingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) throws
Exception {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
- ReaderResource rr = req.getClasspathReaderResource(key);
- return (rr == null ? null : rr.toCommentStrippedString());
+
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, false);
+ if (req != null) {
+ ReaderResource rr = req.getClasspathReaderResource(key);
+ return (rr == null ? null :
rr.toCommentStrippedString());
+ }
+
+ ClasspathResourceManager crm =
session.getSessionObject(ClasspathResourceManager.class, SESSION_crm, false);
+ if (crm != null)
+ return crm.getString(key);
+
+ return null;
}
}
\ No newline at end of file
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/LocalizationVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/LocalizationVar.java
index 3e2cdbe..e806e76 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/LocalizationVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/LocalizationVar.java
@@ -57,7 +57,7 @@ public class LocalizationVar extends MultipartVar {
if (args.length > 0) {
String key = args[0];
String[] a = (args.length > 1) ?
Arrays.copyOfRange(args, 1, args.length) : new String[0];
- return session.getSessionObject(RestRequest.class,
RequestVar.SESSION_req).getMessage(key, (Object[])a);
+ return session.getSessionObject(RestRequest.class,
RequestVar.SESSION_req, true).getMessage(key, (Object[])a);
}
return "";
}
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestAttributeVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestAttributeVar.java
index d5934be..1aa1edd 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestAttributeVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestAttributeVar.java
@@ -79,7 +79,7 @@ public class RequestAttributeVar extends
MultipartResolvingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
return asString(req.getAttribute(key));
}
}
\ No newline at end of file
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestFormDataVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestFormDataVar.java
index 87e15da..c80acfa 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestFormDataVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestFormDataVar.java
@@ -75,7 +75,7 @@ public class RequestFormDataVar extends MultipartResolvingVar
{
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
return req.getFormData(key);
}
}
\ No newline at end of file
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestHeaderVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestHeaderVar.java
index 5f6a702..75af1c9 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestHeaderVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestHeaderVar.java
@@ -75,7 +75,7 @@ public class RequestHeaderVar extends MultipartResolvingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
return req.getHeader(key);
}
}
\ No newline at end of file
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestPathVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestPathVar.java
index 7c6cb4b..d675835 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestPathVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestPathVar.java
@@ -76,7 +76,7 @@ public class RequestPathVar extends MultipartResolvingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
if ("REMAINDER".equals(key))
return req.getPathRemainder();
return req.getPath(key);
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestQueryVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestQueryVar.java
index 6b68af4..2f8433f 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestQueryVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestQueryVar.java
@@ -76,7 +76,7 @@ public class RequestQueryVar extends MultipartResolvingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
return req.getQuery(key);
}
}
\ No newline at end of file
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestVar.java
index dfd7f1f..827d606 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RequestVar.java
@@ -92,7 +92,7 @@ public class RequestVar extends MultipartResolvingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
char c = StringUtils.charAt(key, 0);
if (c == 'c') {
if ("contextPath".equals(key))
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RestInfoVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RestInfoVar.java
index df357d2..f5b27e3 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RestInfoVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/RestInfoVar.java
@@ -100,7 +100,7 @@ public class RestInfoVar extends MultipartResolvingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) throws
RestException, InternalServerError {
try {
- RestRequest req =
session.getSessionObject(RestRequest.class, SESSION_req);
+ RestRequest req =
session.getSessionObject(RestRequest.class, SESSION_req, true);
Swagger swagger = req.getSwagger();
RestInfoProvider rip = req.getInfoProvider();
WriterSerializer s = JsonSerializer.DEFAULT_LAX;
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/SerializedRequestAttrVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/SerializedRequestAttrVar.java
index bc16205..a85efe5 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/SerializedRequestAttrVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/SerializedRequestAttrVar.java
@@ -57,7 +57,7 @@ public class SerializedRequestAttrVar extends StreamedVar {
if (i == -1)
throw new RuntimeException("Invalid format for $SA var.
Must be of the format $SA{contentType,key[,defaultValue]}");
String[] s2 = split(key);
- RestRequest req = session.getSessionObject(RestRequest.class,
RequestVar.SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
RequestVar.SESSION_req, true);
if (req != null) {
Object o = req.getAttribute(key);
if (o == null)
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/ServletInitParamVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/ServletInitParamVar.java
index 0ab528b..68db7c9 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/ServletInitParamVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/ServletInitParamVar.java
@@ -51,6 +51,6 @@ public class ServletInitParamVar extends DefaultingVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- return session.getSessionObject(RestRequest.class,
RequestVar.SESSION_req).getContext().getServletInitParameter(key);
+ return session.getSessionObject(RestRequest.class,
RequestVar.SESSION_req, true).getContext().getServletInitParameter(key);
}
}
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/UrlVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/UrlVar.java
index efe08da..726a58a 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/UrlVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/UrlVar.java
@@ -58,7 +58,7 @@ public class UrlVar extends SimpleVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
return req.getUriResolver().resolve(key);
}
}
\ No newline at end of file
diff --git
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/WidgetVar.java
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/WidgetVar.java
index 2c7a800..5582e18 100644
---
a/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/WidgetVar.java
+++
b/juneau-rest/juneau-rest-server/src/main/java/org/apache/juneau/rest/vars/WidgetVar.java
@@ -58,7 +58,7 @@ public class WidgetVar extends SimpleVar {
@Override /* Parameter */
public String resolve(VarResolverSession session, String key) throws
Exception {
- RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req);
+ RestRequest req = session.getSessionObject(RestRequest.class,
SESSION_req, true);
boolean isScript = false, isStyle = false;
if (key.endsWith(".script")) {
--
To stop receiving notification emails like this one, please contact
[email protected].