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
 &gt; juneau-rest-server &gt; 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].

Reply via email to