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 62c9bcb  Support for serializing transient fields and methods.
62c9bcb is described below

commit 62c9bcbccdb68a03ea374411e68f3d5ffc629fab
Author: JamesBognar <[email protected]>
AuthorDate: Fri Mar 13 12:48:12 2020 -0400

    Support for serializing transient fields and methods.
---
 .../java/org/apache/juneau/BasicBeanTests.java     | 87 ++++++++++++++++++++++
 .../org/apache/juneau/jena/RdfParserBuilder.java   |  6 ++
 .../apache/juneau/jena/RdfSerializerBuilder.java   |  6 ++
 .../main/java/org/apache/juneau/BeanContext.java   | 60 ++++++++++++++-
 .../java/org/apache/juneau/BeanContextBuilder.java | 16 ++++
 .../src/main/java/org/apache/juneau/BeanMeta.java  | 15 ++--
 .../org/apache/juneau/BeanTraverseBuilder.java     |  6 ++
 .../org/apache/juneau/annotation/BeanConfig.java   | 23 ++++++
 .../apache/juneau/annotation/BeanConfigApply.java  |  2 +
 .../org/apache/juneau/csv/CsvParserBuilder.java    |  6 ++
 .../apache/juneau/csv/CsvSerializerBuilder.java    |  6 ++
 .../juneau/html/HtmlDocSerializerBuilder.java      |  6 ++
 .../org/apache/juneau/html/HtmlParserBuilder.java  |  6 ++
 .../juneau/html/HtmlSchemaSerializerBuilder.java   |  6 ++
 .../apache/juneau/html/HtmlSerializerBuilder.java  |  6 ++
 .../html/HtmlStrippedDocSerializerBuilder.java     |  6 ++
 .../org/apache/juneau/jso/JsoParserBuilder.java    |  6 ++
 .../apache/juneau/jso/JsoSerializerBuilder.java    |  6 ++
 .../org/apache/juneau/json/JsonParserBuilder.java  |  6 ++
 .../juneau/json/JsonSchemaSerializerBuilder.java   |  6 ++
 .../apache/juneau/json/JsonSerializerBuilder.java  |  6 ++
 .../jsonschema/JsonSchemaGeneratorBuilder.java     |  6 ++
 .../juneau/msgpack/MsgPackParserBuilder.java       |  6 ++
 .../juneau/msgpack/MsgPackSerializerBuilder.java   |  6 ++
 .../apache/juneau/oapi/OpenApiParserBuilder.java   |  6 ++
 .../juneau/oapi/OpenApiSerializerBuilder.java      |  6 ++
 .../juneau/parser/InputStreamParserBuilder.java    |  6 ++
 .../org/apache/juneau/parser/ParserBuilder.java    |  6 ++
 .../apache/juneau/parser/ParserGroupBuilder.java   |  6 ++
 .../apache/juneau/parser/ReaderParserBuilder.java  |  6 ++
 .../juneau/plaintext/PlainTextParserBuilder.java   |  6 ++
 .../plaintext/PlainTextSerializerBuilder.java      |  6 ++
 .../serializer/OutputStreamSerializerBuilder.java  |  6 ++
 .../juneau/serializer/SerializerBuilder.java       |  6 ++
 .../juneau/serializer/SerializerGroupBuilder.java  |  6 ++
 .../juneau/serializer/WriterSerializerBuilder.java |  6 ++
 .../juneau/soap/SoapXmlSerializerBuilder.java      |  6 ++
 .../org/apache/juneau/uon/UonParserBuilder.java    |  6 ++
 .../apache/juneau/uon/UonSerializerBuilder.java    |  6 ++
 .../urlencoding/UrlEncodingParserBuilder.java      |  6 ++
 .../urlencoding/UrlEncodingSerializerBuilder.java  |  6 ++
 .../org/apache/juneau/xml/XmlParserBuilder.java    |  6 ++
 .../apache/juneau/xml/XmlSerializerBuilder.java    |  6 ++
 .../juneau/rest/client/RestClientBuilder.java      |  2 +-
 .../juneau/rest/client2/RestClientBuilder.java     |  6 ++
 .../org/apache/juneau/rest/RestContextBuilder.java |  6 ++
 46 files changed, 431 insertions(+), 8 deletions(-)

diff --git 
a/juneau-core/juneau-core-utest/src/test/java/org/apache/juneau/BasicBeanTests.java
 
b/juneau-core/juneau-core-utest/src/test/java/org/apache/juneau/BasicBeanTests.java
new file mode 100644
index 0000000..36371c3
--- /dev/null
+++ 
b/juneau-core/juneau-core-utest/src/test/java/org/apache/juneau/BasicBeanTests.java
@@ -0,0 +1,87 @@
+// 
***************************************************************************************************************************
+// * 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.juneau;
+
+import static org.apache.juneau.testutils.TestUtils.*;
+
+import java.beans.*;
+
+import org.apache.juneau.annotation.*;
+import org.apache.juneau.json.*;
+import org.junit.*;
+
+public class BasicBeanTests {
+
+       
//------------------------------------------------------------------------------------------------------------------
+       // Beans with transient fields and methods.
+       
//------------------------------------------------------------------------------------------------------------------
+
+       public static class A1 {
+               public int f1;
+               public transient int f2;
+
+               public static A1 create() {
+                       A1 x = new A1();
+                       x.f1 = 1;
+                       x.f2 = 2;
+                       return x;
+               }
+       }
+
+       @BeanConfig(ignoreTransientFields="false")
+       public static class A {}
+
+       @Test
+       public void a01_testTransientFieldsIgnored() {
+               assertObjectEquals("{f1:1}", A1.create());
+       }
+
+       @Test
+       public void a02_testTransientFieldsIgnored_overrideSetting() {
+               JsonSerializer s = 
SimpleJsonSerializer.DEFAULT.builder().ignoreTransientFields(false).build();
+               assertObjectEquals("{f1:1,f2:2}", A1.create(), s);
+       }
+
+       @Test
+       public void a03_testTransientFieldsIgnored_overrideAnnotation() {
+               JsonSerializer s = 
SimpleJsonSerializer.DEFAULT.builder().applyAnnotations(A.class).build();
+               assertObjectEquals("{f1:1,f2:2}", A1.create(), s);
+       }
+
+       public static class A2 {
+               public int f1;
+
+               private int f2;
+
+               public void setF2(int f2) {
+                       this.f2 = f2;
+               }
+
+               @Transient
+               public int getF2() {
+                       return f2;
+               }
+
+               public static A2 create() {
+                       A2 x = new A2();
+                       x.f1 = 1;
+                       x.f2 = 2;
+                       return x;
+               }
+       }
+
+       @Test
+       public void a04_testTransientMethodsIgnored() {
+               assertObjectEquals("{f1:1}", A2.create());
+       }
+}
diff --git 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
index 9d19440..7b501a3 100644
--- 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
+++ 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfParserBuilder.java
@@ -1124,6 +1124,12 @@ public class RdfParserBuilder extends 
ReaderParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public RdfParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public RdfParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
index ed7d448..1b5d962 100644
--- 
a/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall-rdf/src/main/java/org/apache/juneau/jena/RdfSerializerBuilder.java
@@ -1367,6 +1367,12 @@ public class RdfSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public RdfSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public RdfSerializerBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
index 170d00d..37d88b8 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContext.java
@@ -1500,6 +1500,50 @@ public class BeanContext extends Context implements 
MetaProvider {
        public static final String BEAN_ignorePropertiesWithoutSetters = PREFIX 
+ ".ignorePropertiesWithoutSetters.b";
 
        /**
+        * Configuration property:  Ignore transient fields.
+        *
+        * <h5 class='section'>Property:</h5>
+        * <ul class='spaced-list'>
+        *      <li><b>ID:</b>  {@link 
org.apache.juneau.BeanContext#BEAN_ignoreTransientFields 
BEAN_ignoreTransientFields}
+        *      <li><b>Name:</b>  <js>"BeanContext.ignoreTransientFields.b"</js>
+        *      <li><b>Data type:</b>  <jk>boolean</jk>
+        *      <li><b>System property:</b>  
<c>BeanContext.ignoreTransientFields</c>
+        *      <li><b>Environment variable:</b>  
<c>BEANCONTEXT_IGNORETRANSIENTFIELDS</c>
+        *      <li><b>Default:</b>  <jk>true</jk>
+        *      <li><b>Session property:</b>  <jk>false</jk>
+        *      <li><b>Annotations:</b>
+        *              <ul>
+        *                      <li class='ja'>{@link 
org.apache.juneau.annotation.BeanConfig#ignoreTransientFields()}
+        *              </ul>
+        *      <li><b>Methods:</b>
+        *              <ul>
+        *                      <li class='jm'>{@link 
org.apache.juneau.BeanContextBuilder#ignoreTransientFields(boolean)}
+        *              </ul>
+        * </ul>
+        *
+        * <h5 class='section'>Description:</h5>
+        * <p>
+        * If <jk>true</jk>, methods and fields marked as <jk>transient</jk> or 
annotated with {@link java.beans.Transient}
+        * will be ignored as bean properties.
+        *
+        * <h5 class='section'>Example:</h5>
+        * <p class='bcode w800'>
+        *      <jc>// Create a parser that doesn't ignore transient 
fields.</jc>
+        *      ReaderParser p = JsonParser
+        *              .<jsm>create</jsm>()
+        *              .ignoreTransientFields(<jk>false</jk>)
+        *              .build();
+        *
+        *      <jc>// Same, but use property.</jc>
+        *      ReaderParser p = JsonParser
+        *              .<jsm>create</jsm>()
+        *              .set(<jsf>BEAN_ignoreTransientFields</jsf>, 
<jk>false</jk>)
+        *              .build();
+        * </p>
+        */
+       public static final String BEAN_ignoreTransientFields = PREFIX + 
".ignoreTransientFields.b";
+
+       /**
         * Configuration property:  Ignore unknown properties.
         *
         * <h5 class='section'>Property:</h5>
@@ -2368,6 +2412,7 @@ public class BeanContext extends Context implements 
MetaProvider {
                ignoreUnknownBeanProperties,
                ignoreUnknownNullBeanProperties,
                ignorePropertiesWithoutSetters,
+               ignoreTransientFields,
                ignoreInvocationExceptionsOnGetters,
                ignoreInvocationExceptionsOnSetters,
                useJavaBeanIntrospector,
@@ -2448,6 +2493,7 @@ public class BeanContext extends Context implements 
MetaProvider {
                ignoreUnknownBeanProperties = 
getBooleanProperty(BEAN_ignoreUnknownBeanProperties, false);
                ignoreUnknownNullBeanProperties = 
getBooleanProperty(BEAN_ignoreUnknownNullBeanProperties, true);
                ignorePropertiesWithoutSetters = 
getBooleanProperty(BEAN_ignorePropertiesWithoutSetters, true);
+               ignoreTransientFields = 
getBooleanProperty(BEAN_ignoreTransientFields, true);
                ignoreInvocationExceptionsOnGetters = 
getBooleanProperty(BEAN_ignoreInvocationExceptionsOnGetters, false);
                ignoreInvocationExceptionsOnSetters = 
getBooleanProperty(BEAN_ignoreInvocationExceptionsOnSetters, false);
                useJavaBeanIntrospector = 
getBooleanProperty(BEAN_useJavaBeanIntrospector, false);
@@ -4030,8 +4076,6 @@ public class BeanContext extends Context implements 
MetaProvider {
        /**
         * Configuration property:  Ignore properties without setters.
         *
-        * <br>Otherwise, a {@code RuntimeException} is thrown.
-        *
         * @see #BEAN_ignorePropertiesWithoutSetters
         * @return
         *      <jk>true</jk> if trying to set a value on a bean property 
without a setter is silently ignored.
@@ -4041,6 +4085,17 @@ public class BeanContext extends Context implements 
MetaProvider {
        }
 
        /**
+        * Configuration property:  Ignore transient fields.
+        *
+        * @see #BEAN_ignoreTransientFields
+        * @return
+        *      <jk>true</jk> if fields and methods marked as transient should 
be ignored.
+        */
+       protected final boolean isIgnoreTransientFields() {
+               return ignoreTransientFields;
+       }
+
+       /**
         * Configuration property:  Ignore unknown properties.
         *
         * @see #BEAN_ignoreUnknownBeanProperties
@@ -4247,6 +4302,7 @@ public class BeanContext extends Context implements 
MetaProvider {
                                .append("ignoreInvocationExceptionsOnGetters", 
ignoreInvocationExceptionsOnGetters)
                                .append("ignoreInvocationExceptionsOnSetters", 
ignoreInvocationExceptionsOnSetters)
                                .append("ignorePropertiesWithoutSetters", 
ignorePropertiesWithoutSetters)
+                               .append("ignoreTransientProperties", 
ignoreTransientFields)
                                .append("ignoreUnknownBeanProperties", 
ignoreUnknownBeanProperties)
                                .append("ignoreUnknownNullBeanProperties", 
ignoreUnknownNullBeanProperties)
                                .append("implClasses", implClasses)
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
index fc94f9d..5697004 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanContextBuilder.java
@@ -1347,6 +1347,22 @@ public class BeanContextBuilder extends ContextBuilder {
        }
 
        /**
+        * Configuration property:  Ignore transient fields.
+        *
+        * <ul class='seealso'>
+        *      <li class='jf'>{@link BeanContext#BEAN_ignoreTransientFields}
+        * </ul>
+        *
+        * @param value
+        *      The new value for this property.
+        *      <br>The default is <jk>true</jk>.
+        * @return This object (for method chaining).
+        */
+       public BeanContextBuilder ignoreTransientFields(boolean value) {
+               return set(BEAN_ignoreTransientFields, value);
+       }
+
+       /**
         * Configuration property:  Ignore unknown properties.
         *
         * <p>
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
index fb2d70b..706b6ec 100644
--- a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
+++ b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanMeta.java
@@ -17,9 +17,7 @@ import static org.apache.juneau.internal.StringUtils.*;
 import static org.apache.juneau.reflect.ReflectFlags.*;
 import static org.apache.juneau.BeanMeta.MethodType.*;
 
-import java.beans.BeanInfo;
-import java.beans.Introspector;
-import java.beans.PropertyDescriptor;
+import java.beans.*;
 import java.io.*;
 import java.lang.annotation.*;
 import java.lang.reflect.*;
@@ -698,6 +696,9 @@ public class BeanMeta<T> {
                                BeanIgnore bi = 
ctx.getLastAnnotation(BeanIgnore.class, m);
                                if (bi != null)
                                        continue;
+                               Transient t = 
ctx.getLastAnnotation(Transient.class, m);
+                               if (t != null && t.value())
+                                       continue;
 
                                @SuppressWarnings("deprecation")
                                BeanProperty px = 
m.getLastAnnotation(BeanProperty.class);
@@ -793,7 +794,9 @@ public class BeanMeta<T> {
                List<Field> l = new LinkedList<>();
                for (ClassInfo c2 : findClasses(c, stopClass)) {
                        for (FieldInfo f : c2.getDeclaredFields()) {
-                               if (f.isAny(STATIC, TRANSIENT))
+                               if (f.isAny(STATIC))
+                                       continue;
+                               if (ctx.isIgnoreTransientFields() && 
(f.isAny(TRANSIENT)))
                                        continue;
                                if (ctx.hasAnnotation(BeanIgnore.class, f))
                                        continue;
@@ -814,7 +817,9 @@ public class BeanMeta<T> {
        static final Field findInnerBeanField(BeanContext bc, Class<?> c, 
Class<?> stopClass, String name) {
                for (ClassInfo c2 : findClasses(c, stopClass)) {
                        for (FieldInfo f : c2.getDeclaredFields()) {
-                               if (f.isAny(STATIC, TRANSIENT))
+                               if (f.isAny(STATIC))
+                                       continue;
+                               if (bc.isIgnoreTransientFields() && 
(f.isAny(TRANSIENT) || f.hasAnnotation(Transient.class)))
                                        continue;
                                if (f.hasAnnotation(BeanIgnore.class, bc))
                                        continue;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
index 2e82d63..2af6446 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/BeanTraverseBuilder.java
@@ -493,6 +493,12 @@ public class BeanTraverseBuilder extends 
BeanContextBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public BeanTraverseBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public BeanTraverseBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfig.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfig.java
index 4c89a1b..f643fca 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfig.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfig.java
@@ -1149,6 +1149,29 @@ public @interface BeanConfig {
        String ignorePropertiesWithoutSetters() default "";
 
        /**
+        * Configuration property:  Ignore transient fields.
+        *
+        * <p>
+        * If <jk>true</jk>, methods and fields marked as <jk>transient</jk> 
will be ignored as bean properties.
+        *
+        * <ul class='notes'>
+        *      <li>
+        *              Possible values:
+        *              <ul>
+        *                      <li><js>"true"</js> (default)
+        *                      <li><js>"false"</js>
+        *              </ul>
+        *      <li>
+        *              Supports {@doc DefaultSvlVariables} (e.g. 
<js>"$C{myConfigVar}"</js>).
+        * </ul>
+        *
+        * <ul class='seealso'>
+        *      <li class='jf'>{@link BeanContext#BEAN_ignoreTransientFields}
+        * </ul>
+        */
+       String ignoreTransientFields() default "";
+
+       /**
         * Configuration property:  Ignore unknown properties.
         *
         * <p>
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigApply.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigApply.java
index f895ee7..09345fc 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigApply.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/annotation/BeanConfigApply.java
@@ -101,6 +101,8 @@ public class BeanConfigApply extends 
ConfigApply<BeanConfig> {
                        psb.set(BEAN_ignoreInvocationExceptionsOnSetters, 
bool(a.ignoreInvocationExceptionsOnSetters()));
                if (! a.ignorePropertiesWithoutSetters().isEmpty())
                        psb.set(BEAN_ignorePropertiesWithoutSetters, 
bool(a.ignorePropertiesWithoutSetters()));
+               if (! a.ignoreTransientFields().isEmpty())
+                       psb.set(BEAN_ignoreTransientFields, 
bool(a.ignoreTransientFields()));
                if (! a.ignoreUnknownBeanProperties().isEmpty())
                        psb.set(BEAN_ignoreUnknownBeanProperties, 
bool(a.ignoreUnknownBeanProperties()));
                if (! a.ignoreUnknownNullBeanProperties().isEmpty())
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
index 54719f7..6ad4fb1 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvParserBuilder.java
@@ -456,6 +456,12 @@ public class CsvParserBuilder extends ReaderParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public CsvParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public CsvParserBuilder ignoreUnknownBeanProperties() {
                super.ignoreUnknownBeanProperties();
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
index 3014a2a..d4525dc 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/csv/CsvSerializerBuilder.java
@@ -575,6 +575,12 @@ public class CsvSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public CsvSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public CsvSerializerBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
index 36351f5..08b4a08 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlDocSerializerBuilder.java
@@ -1098,6 +1098,12 @@ public class HtmlDocSerializerBuilder extends 
HtmlStrippedDocSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public HtmlDocSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public HtmlDocSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
index 102b383..bc06059 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlParserBuilder.java
@@ -472,6 +472,12 @@ public class HtmlParserBuilder extends XmlParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public HtmlParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public HtmlParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
index 559611d..29316a4 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSchemaSerializerBuilder.java
@@ -726,6 +726,12 @@ public class HtmlSchemaSerializerBuilder extends 
HtmlSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public HtmlSchemaSerializerBuilder ignoreTransientFields(boolean value) 
{
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public HtmlSchemaSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
index e8ced0f..cbc9109 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlSerializerBuilder.java
@@ -750,6 +750,12 @@ public class HtmlSerializerBuilder extends 
XmlSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public HtmlSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public HtmlSerializerBuilder ignoreUnknownBeanProperties(boolean value) 
{
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
index c6389c7..5b0d114 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/html/HtmlStrippedDocSerializerBuilder.java
@@ -661,6 +661,12 @@ public class HtmlStrippedDocSerializerBuilder extends 
HtmlSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public HtmlStrippedDocSerializerBuilder ignoreTransientFields(boolean 
value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public HtmlStrippedDocSerializerBuilder 
ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
index 7e5d5a6..e39cef6 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoParserBuilder.java
@@ -442,6 +442,12 @@ public class JsoParserBuilder extends 
InputStreamParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public JsoParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public JsoParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
index 8f91aa3..87adf2a 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jso/JsoSerializerBuilder.java
@@ -532,6 +532,12 @@ public class JsoSerializerBuilder extends 
OutputStreamSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public JsoSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public JsoSerializerBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
index 5d08c1c..96f4c8a 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonParserBuilder.java
@@ -488,6 +488,12 @@ public class JsonParserBuilder extends ReaderParserBuilder 
{
        }
 
        @Override /* BeanContextBuilder */
+       public JsonParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public JsonParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
index a743d1b..05882a7 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSchemaSerializerBuilder.java
@@ -774,6 +774,12 @@ public class JsonSchemaSerializerBuilder extends 
JsonSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public JsonSchemaSerializerBuilder ignoreTransientFields(boolean value) 
{
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public JsonSchemaSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
index 70d69f8..e01e01a 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/json/JsonSerializerBuilder.java
@@ -665,6 +665,12 @@ public class JsonSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public JsonSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public JsonSerializerBuilder ignoreUnknownBeanProperties(boolean value) 
{
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
index 16b8316..299b3f3 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/jsonschema/JsonSchemaGeneratorBuilder.java
@@ -636,6 +636,12 @@ public class JsonSchemaGeneratorBuilder extends 
BeanTraverseBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public JsonSchemaGeneratorBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public JsonSchemaGeneratorBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
index 39ca7f2..6927232 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackParserBuilder.java
@@ -442,6 +442,12 @@ public class MsgPackParserBuilder extends 
InputStreamParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public MsgPackParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public MsgPackParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
index 4196af7..555ea89 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/msgpack/MsgPackSerializerBuilder.java
@@ -532,6 +532,12 @@ public class MsgPackSerializerBuilder extends 
OutputStreamSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public MsgPackSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public MsgPackSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
index e66ec57..d0b48c9 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiParserBuilder.java
@@ -425,6 +425,12 @@ public class OpenApiParserBuilder extends UonParserBuilder 
{
        }
 
        @Override /* BeanContextBuilder */
+       public OpenApiParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public OpenApiParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
index 0a8186f..dbe44ec 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/oapi/OpenApiSerializerBuilder.java
@@ -576,6 +576,12 @@ public class OpenApiSerializerBuilder extends 
UonSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public OpenApiSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public OpenApiSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
index b54928c..28d93ff 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/InputStreamParserBuilder.java
@@ -473,6 +473,12 @@ public class InputStreamParserBuilder extends 
ParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public InputStreamParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public InputStreamParserBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
index 23fb3f6..aa56bdb 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserBuilder.java
@@ -552,6 +552,12 @@ public class ParserBuilder extends BeanContextBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public ParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public ParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
index 3cf8ebf..668c6a9 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ParserGroupBuilder.java
@@ -696,6 +696,12 @@ public class ParserGroupBuilder extends BeanContextBuilder 
{
        }
 
        @Override /* BeanContextBuilder */
+       public ParserGroupBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public ParserGroupBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
index 918566a..020d006 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/parser/ReaderParserBuilder.java
@@ -472,6 +472,12 @@ public abstract class ReaderParserBuilder extends 
ParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public ReaderParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public ReaderParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
index 8a03a04..ad5b784 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextParserBuilder.java
@@ -450,6 +450,12 @@ public class PlainTextParserBuilder extends 
ReaderParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public PlainTextParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public PlainTextParserBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
index 2ded5bd..5d55f32 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/plaintext/PlainTextSerializerBuilder.java
@@ -575,6 +575,12 @@ public class PlainTextSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public PlainTextSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public PlainTextSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
index 4b3867a..4ca416e 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/OutputStreamSerializerBuilder.java
@@ -413,6 +413,12 @@ public class OutputStreamSerializerBuilder extends 
SerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public OutputStreamSerializerBuilder ignoreTransientFields(boolean 
value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public OutputStreamSerializerBuilder 
ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
index 484fb1c..c6fde7b 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerBuilder.java
@@ -827,6 +827,12 @@ public class SerializerBuilder extends BeanTraverseBuilder 
{
        }
 
        @Override /* BeanContextBuilder */
+       public SerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public SerializerBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
index a06dc10..82e928c 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/SerializerGroupBuilder.java
@@ -1001,6 +1001,12 @@ public class SerializerGroupBuilder extends 
BeanTraverseBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public SerializerGroupBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public SerializerGroupBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
index 9dd2463..d117ea9 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/serializer/WriterSerializerBuilder.java
@@ -522,6 +522,12 @@ public class WriterSerializerBuilder extends 
SerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public WriterSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public WriterSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
index 3c2fc74..40642d4 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/soap/SoapXmlSerializerBuilder.java
@@ -594,6 +594,12 @@ public class SoapXmlSerializerBuilder extends 
XmlSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public SoapXmlSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public SoapXmlSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
index 9afa617..1d44d2e 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonParserBuilder.java
@@ -525,6 +525,12 @@ public class UonParserBuilder extends ReaderParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public UonParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public UonParserBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
index 7b3df29..4922b75 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/uon/UonSerializerBuilder.java
@@ -666,6 +666,12 @@ public class UonSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public UonSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public UonSerializerBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
index d893c60..dfd6efe 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingParserBuilder.java
@@ -470,6 +470,12 @@ public class UrlEncodingParserBuilder extends 
UonParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public UrlEncodingParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public UrlEncodingParserBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
index 001471e..290e578 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/urlencoding/UrlEncodingSerializerBuilder.java
@@ -638,6 +638,12 @@ public class UrlEncodingSerializerBuilder extends 
UonSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public UrlEncodingSerializerBuilder ignoreTransientFields(boolean 
value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public UrlEncodingSerializerBuilder ignoreUnknownBeanProperties(boolean 
value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
index 6db9248..bb30905 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlParserBuilder.java
@@ -622,6 +622,12 @@ public class XmlParserBuilder extends ReaderParserBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public XmlParserBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public XmlParserBuilder ignorePropertiesWithoutSetters(boolean value) {
                super.ignorePropertiesWithoutSetters(value);
                return this;
diff --git 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
index 6f7c28b..1db2d58 100644
--- 
a/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
+++ 
b/juneau-core/juneau-marshall/src/main/java/org/apache/juneau/xml/XmlSerializerBuilder.java
@@ -777,6 +777,12 @@ public class XmlSerializerBuilder extends 
WriterSerializerBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public XmlSerializerBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public XmlSerializerBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
index bbb614c..e5cf1f7 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client/RestClientBuilder.java
@@ -2679,7 +2679,7 @@ public class RestClientBuilder extends BeanContextBuilder 
{
                return this;
        }
 
-       @Override /* BeanContextBuilder */
+       @Override
        public RestClientBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
diff --git 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
index 498c27e..1167af8 100644
--- 
a/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
+++ 
b/juneau-rest/juneau-rest-client/src/main/java/org/apache/juneau/rest/client2/RestClientBuilder.java
@@ -3018,6 +3018,12 @@ public class RestClientBuilder extends 
BeanContextBuilder {
        }
 
        @Override /* BeanContextBuilder */
+       public RestClientBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public RestClientBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;
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 95c562c..e78f9a8 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
@@ -2774,6 +2774,12 @@ public class RestContextBuilder extends 
BeanContextBuilder implements ServletCon
        }
 
        @Override /* BeanContextBuilder */
+       public RestContextBuilder ignoreTransientFields(boolean value) {
+               super.ignoreTransientFields(value);
+               return this;
+       }
+
+       @Override /* BeanContextBuilder */
        public RestContextBuilder ignoreUnknownBeanProperties(boolean value) {
                super.ignoreUnknownBeanProperties(value);
                return this;

Reply via email to