Rick, I think I see what the issue is however, I have don't have the environment available for verifying it. If I posted a PR would you be in a position to try it out?
Matt On Wed, Dec 14, 2016 at 9:00 PM, Richard St. John <[email protected]> wrote: > Matt, > > This is where it gets interesting. The issue only arises when nginx is > used as a reverse proxy for a *clustered* NiFi (within a trusted > environment using http). In fact, it even occurs when the reverse proxy > upstream points to only one of the nifi nodes in the cluster. Moreover, > the problem is limited to importing/uploading a template. Deleting, > downloading, and instantiating existing templates works fine. > > There is another strange pattern that I discovered. I can get templates to > import if I hard-code the scheme header as follows: *proxy_set_header > X-ProxyScheme http;* However, when I hard-code the proxy scheme to http, I > cannot delete a template after it is uploaded. > > Below are several of the logs (IPs and DNS were changed for security > reasons). > > *nginx.err* > 2016/12/15 01:19:42 [warn] 29377#29377: *16 a client request body is > buffered to a temporary file /var/cache/nginx/client_temp/0000000005, > client: X.X.X.X, server: nifi-rix.somedomain.com, request: "POST > /nifi-api/process-groups/fe2e65ad-0158-1000-5fa5- > 8a86805ff8bb/templates/upload > HTTP/1.1", host: "nifi-rix.somedomain.com", referrer: " > https://nifi-rix.somedomain.com/nifi/" > > *nginx access log* > [15/Dec/2016:01:22:17 +0000] - (X.X.X.X - rstjohn) "POST > /nifi-api/process-groups/fe2e65ad-0158-1000-5fa5- > 8a86805ff8bb/templates/upload > HTTP/1.1" 500 0 "https://nifi-rix.somedomain.com/nifi/" "Mozilla/5.0 > (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) > Chrome/55.0.2883.95 Safari/537.36" "-" > > > *NiFi Log: nifi-app.log* > 2016-12-15 01:25:00,362 WARN [Replicate Request Thread-4] > o.a.n.c.c.h.r.ThreadPoolRequestReplicator Failed to replicate request POST > /nifi-api/process-groups/fe2e65ad-0158-1000-5fa5- > 8a86805ff8bb/templates/import > to ip-X-X-X-X.ec2.internal:8080 due to {} > com.sun.jersey.api.client.ClientHandlerException: > javax.ws.rs.WebApplicationException: javax.xml.bind.MarshalException > - with linked exception: > [javax.net.ssl.SSLException: Unrecognized SSL message, plaintext > connection?] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle( > URLConnectionClientHandler.java:155) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.Client.handle(Client.java:652) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.WebResource.handle(WebResource.java:682) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.WebResource$Builder.post( > WebResource.java:560) > ~[jersey-client-1.19.jar:1.19] > at > org.apache.nifi.cluster.coordination.http.replication. > ThreadPoolRequestReplicator.replicateRequest(ThreadPoolRequestReplicator. > java:587) > ~[nifi-framework-cluster-1.1.0-A1-SNAPSHOT.jar:1.1.0-A1-SNAPSHOT] > at > org.apache.nifi.cluster.coordination.http.replication. > ThreadPoolRequestReplicator$NodeHttpRequest.run( > ThreadPoolRequestReplicator.java:770) > ~[nifi-framework-cluster-1.1.0-A1-SNAPSHOT.jar:1.1.0-A1-SNAPSHOT] > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > [na:1.8.0_112] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_112] > at > java.util.concurrent.ThreadPoolExecutor.runWorker( > ThreadPoolExecutor.java:1142) > [na:1.8.0_112] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run( > ThreadPoolExecutor.java:617) > [na:1.8.0_112] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_112] > Caused by: javax.ws.rs.WebApplicationException: > javax.xml.bind.MarshalException > - with linked exception: > [javax.net.ssl.SSLException: Unrecognized SSL message, plaintext > connection?] > at > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo( > AbstractRootElementProvider.java:159) > ~[jersey-core-1.19.jar:1.19] > at > com.sun.jersey.api.client.RequestWriter.writeRequestEntity( > RequestWriter.java:300) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke( > URLConnectionClientHandler.java:217) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle( > URLConnectionClientHandler.java:153) > ~[jersey-client-1.19.jar:1.19] > ... 11 common frames omitted > Caused by: javax.xml.bind.MarshalException: null > at > com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:325) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal( > MarshallerImpl.java:249) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > javax.xml.bind.helpers.AbstractMarshallerImpl.marshal( > AbstractMarshallerImpl.java:95) > ~[na:1.8.0_112] > at > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo( > AbstractRootElementProvider.java:179) > ~[jersey-core-1.19.jar:1.19] > at > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo( > AbstractRootElementProvider.java:157) > ~[jersey-core-1.19.jar:1.19] > ... 14 common frames omitted > Caused by: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext > connection? > at sun.security.ssl.InputRecord.handleUnknownRecord(InputRecord.java:710) > ~[na:1.8.0_112] > at sun.security.ssl.InputRecord.read(InputRecord.java:527) ~[na:1.8.0_112] > at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) > ~[na:1.8.0_112] > at > sun.security.ssl.SSLSocketImpl.performInitialHandshake( > SSLSocketImpl.java:1375) > ~[na:1.8.0_112] > at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) > ~[na:1.8.0_112] > at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) > ~[na:1.8.0_112] > at > sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559) > ~[na:1.8.0_112] > at > sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect( > AbstractDelegateHttpsURLConnection.java:185) > ~[na:1.8.0_112] > at > sun.net.www.protocol.http.HttpURLConnection.getOutputStream0( > HttpURLConnection.java:1316) > ~[na:1.8.0_112] > at > sun.net.www.protocol.http.HttpURLConnection.getOutputStream( > HttpURLConnection.java:1291) > ~[na:1.8.0_112] > at > sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream( > HttpsURLConnectionImpl.java:250) > ~[na:1.8.0_112] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler$1$ > 1.getOutputStream(URLConnectionClientHandler.java:238) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.api.client.CommittingOutputStream.commitStream( > CommittingOutputStream.java:117) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.api.client.CommittingOutputStream.write( > CommittingOutputStream.java:89) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput.write( > UTF8XmlOutput.java:409) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at com.sun.xml.bind.v2.runtime.output.Encoded.write(Encoded.java:167) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput. > writeName(UTF8XmlOutput.java:239) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput. > beginStartTag(UTF8XmlOutput.java:167) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.leafElement( > XMLSerializer.java:327) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$StringImplImpl. > writeLeafElement(RuntimeBuiltinLeafInfoImpl.java:1045) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$StringImplImpl. > writeLeafElement(RuntimeBuiltinLeafInfoImpl.java:1024) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.reflect.TransducedAccessor$ > CompositeTransducedAccessorImpl.writeLeafElement( > TransducedAccessor.java:256) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.SingleElementLeafProperty. > serializeBody(SingleElementLeafProperty.java:128) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType( > XMLSerializer.java:700) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.ArrayElementNodeProperty. > serializeItem(ArrayElementNodeProperty.java:69) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.ArrayElementProperty. > serializeListBody(ArrayElementProperty.java:172) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.ArrayERProperty. > serializeBody(ArrayERProperty.java:159) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType( > XMLSerializer.java:700) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty. > serializeBody(SingleElementNodeProperty.java:156) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType( > XMLSerializer.java:700) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty. > serializeBody(SingleElementNodeProperty.java:156) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsSoleContent( > XMLSerializer.java:597) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeRoot( > ClassBeanInfoImpl.java:328) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsRoot( > XMLSerializer.java:498) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:320) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > ... 18 common frames omitted > 2016-12-15 01:25:00,363 WARN [Replicate Request Thread-4] > o.a.n.c.c.h.r.ThreadPoolRequestReplicator > com.sun.jersey.api.client.ClientHandlerException: > javax.ws.rs.WebApplicationException: javax.xml.bind.MarshalException > - with linked exception: > [javax.net.ssl.SSLException: Unrecognized SSL message, plaintext > connection?] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle( > URLConnectionClientHandler.java:155) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.Client.handle(Client.java:652) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.WebResource.handle(WebResource.java:682) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.WebResource.access$200(WebResource.java:74) > ~[jersey-client-1.19.jar:1.19] > at com.sun.jersey.api.client.WebResource$Builder.post( > WebResource.java:560) > ~[jersey-client-1.19.jar:1.19] > at > org.apache.nifi.cluster.coordination.http.replication. > ThreadPoolRequestReplicator.replicateRequest(ThreadPoolRequestReplicator. > java:587) > ~[nifi-framework-cluster-1.1.0-A1-SNAPSHOT.jar:1.1.0-A1-SNAPSHOT] > at > org.apache.nifi.cluster.coordination.http.replication. > ThreadPoolRequestReplicator$NodeHttpRequest.run( > ThreadPoolRequestReplicator.java:770) > ~[nifi-framework-cluster-1.1.0-A1-SNAPSHOT.jar:1.1.0-A1-SNAPSHOT] > at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > [na:1.8.0_112] > at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_112] > at > java.util.concurrent.ThreadPoolExecutor.runWorker( > ThreadPoolExecutor.java:1142) > [na:1.8.0_112] > at > java.util.concurrent.ThreadPoolExecutor$Worker.run( > ThreadPoolExecutor.java:617) > [na:1.8.0_112] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_112] > Caused by: javax.ws.rs.WebApplicationException: > javax.xml.bind.MarshalException > - with linked exception: > [javax.net.ssl.SSLException: Unrecognized SSL message, plaintext > connection?] > at > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo( > AbstractRootElementProvider.java:159) > ~[jersey-core-1.19.jar:1.19] > at > com.sun.jersey.api.client.RequestWriter.writeRequestEntity( > RequestWriter.java:300) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler._invoke( > URLConnectionClientHandler.java:217) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler.handle( > URLConnectionClientHandler.java:153) > ~[jersey-client-1.19.jar:1.19] > ... 11 common frames omitted > Caused by: javax.xml.bind.MarshalException: null > at > com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:325) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.MarshallerImpl.marshal( > MarshallerImpl.java:249) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > javax.xml.bind.helpers.AbstractMarshallerImpl.marshal( > AbstractMarshallerImpl.java:95) > ~[na:1.8.0_112] > at > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo( > AbstractRootElementProvider.java:179) > ~[jersey-core-1.19.jar:1.19] > at > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvider.writeTo( > AbstractRootElementProvider.java:157) > ~[jersey-core-1.19.jar:1.19] > ... 14 common frames omitted > Caused by: javax.net.ssl.SSLException: Unrecognized SSL message, plaintext > connection? > at sun.security.ssl.InputRecord.handleUnknownRecord(InputRecord.java:710) > ~[na:1.8.0_112] > at sun.security.ssl.InputRecord.read(InputRecord.java:527) ~[na:1.8.0_112] > at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:973) > ~[na:1.8.0_112] > at > sun.security.ssl.SSLSocketImpl.performInitialHandshake( > SSLSocketImpl.java:1375) > ~[na:1.8.0_112] > at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403) > ~[na:1.8.0_112] > at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387) > ~[na:1.8.0_112] > at > sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559) > ~[na:1.8.0_112] > at > sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect( > AbstractDelegateHttpsURLConnection.java:185) > ~[na:1.8.0_112] > at > sun.net.www.protocol.http.HttpURLConnection.getOutputStream0( > HttpURLConnection.java:1316) > ~[na:1.8.0_112] > at > sun.net.www.protocol.http.HttpURLConnection.getOutputStream( > HttpURLConnection.java:1291) > ~[na:1.8.0_112] > at > sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream( > HttpsURLConnectionImpl.java:250) > ~[na:1.8.0_112] > at > com.sun.jersey.client.urlconnection.URLConnectionClientHandler$1$ > 1.getOutputStream(URLConnectionClientHandler.java:238) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.api.client.CommittingOutputStream.commitStream( > CommittingOutputStream.java:117) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.jersey.api.client.CommittingOutputStream.write( > CommittingOutputStream.java:89) > ~[jersey-client-1.19.jar:1.19] > at > com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput.write( > UTF8XmlOutput.java:409) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at com.sun.xml.bind.v2.runtime.output.Encoded.write(Encoded.java:167) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput. > writeName(UTF8XmlOutput.java:239) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.output.UTF8XmlOutput. > beginStartTag(UTF8XmlOutput.java:167) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.leafElement( > XMLSerializer.java:327) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$StringImplImpl. > writeLeafElement(RuntimeBuiltinLeafInfoImpl.java:1045) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$StringImplImpl. > writeLeafElement(RuntimeBuiltinLeafInfoImpl.java:1024) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.reflect.TransducedAccessor$ > CompositeTransducedAccessorImpl.writeLeafElement( > TransducedAccessor.java:256) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.SingleElementLeafProperty. > serializeBody(SingleElementLeafProperty.java:128) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType( > XMLSerializer.java:700) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.ArrayElementNodeProperty. > serializeItem(ArrayElementNodeProperty.java:69) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.ArrayElementProperty. > serializeListBody(ArrayElementProperty.java:172) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.ArrayERProperty. > serializeBody(ArrayERProperty.java:159) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType( > XMLSerializer.java:700) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty. > serializeBody(SingleElementNodeProperty.java:156) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsXsiType( > XMLSerializer.java:700) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.property.SingleElementNodeProperty. > serializeBody(SingleElementNodeProperty.java:156) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeBody( > ClassBeanInfoImpl.java:344) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsSoleContent( > XMLSerializer.java:597) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.ClassBeanInfoImpl.serializeRoot( > ClassBeanInfoImpl.java:328) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.XMLSerializer.childAsRoot( > XMLSerializer.java:498) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > at > com.sun.xml.bind.v2.runtime.MarshallerImpl.write(MarshallerImpl.java:320) > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > ... 18 common frames omitted > > Rick. > > > On Wed, Dec 14, 2016 at 4:06 PM Matt Gilman <[email protected]> > wrote: > > > Rick, > > > > The signature of the endpoint that accepts a template upload has not > > changed (other than the path). Are you running a NiFi cluster in the > > trusted environment or is it a standalone instance? Is the issue when you > > attempt to upload the template or when you attempt to drop the template > on > > your graph? Just wanted to confirm. > > > > The mixed content error sounds like a client side message when a webpage > is > > referencing resources (img, js, css, etc) from different sources. For > > instance, loading a webpage over HTTPS which is referencing a resource > over > > HTTP. The frontend resources should all be bundled with the application > and > > they should be all loaded through your proxy. > > > > Are there any other errors or messages? Maybe check the user log on the > > NiFi instances. Or maybe the logs of the proxy server to see the requests > > being processed. Hoping there's more details being logged someplace. > > > > Thanks > > > > Matt > > > > On Wed, Dec 14, 2016 at 1:11 PM, Richard St. John <[email protected]> > > wrote: > > > > > I am using an nginx reverse proxy in front of NiFi 1.1.x. Here are the > > > important details. First, nginx is using basic auth and SSL. Second, > > NiFi > > > is running in a trusted environment without SSL. We successfully used > > the > > > same layout for NiFi 0.7.x without issue. However, starting with 1.0.x > > and > > > continuing in 1.1.x, I cannot import a saved template. The error > > complains > > > about mixed content (http and https). Has this layout been tested and > > > validated? If so, what proxy headers am I missing? > > > > > > Below are the proxy headers I pass from nginx to NiFi: > > > proxy_set_header X-ProxyScheme $scheme; > > > proxy_set_header X-ProxyHost $host; > > > proxy_set_header X-ProxyPort 443; > > > proxy_set_header X-ProxyContextPath ""; > > > > > > > > > Thanks Rick. > > > -- > > > > > > ---------------------------- > > > Richard St. John, Ph.D. > > > Senior Software Engineer, Applied Mathematician > > > Asymmetrik, Ltd. > > > > > > -- > > ---------------------------- > Richard St. John, Ph.D. > Senior Software Engineer, Applied Mathematician > Asymmetrik, Ltd. >
