Matt, Great news! I was able to successfully test the changes you made to address the import template issue. I do not know what other verification is needed for your PR to be approved, but after building NIFI 1.2.0-SNAPSHOT with your changes from NIFI-3207, the issue is resolved.
Thanks. Rick. On Thu, Dec 15, 2016 at 1:43 PM Matt Gilman <[email protected]> wrote: > Rick, > > Here's my proposed solution for the template upload issue [1]. Please give > it a shot behind your proxy. > > Thanks > > Matt > > [1] https://github.com/apache/nifi/pull/1334 > > On Thu, Dec 15, 2016 at 12:58 PM, Matt Gilman <[email protected]> > wrote: > > > Awesome. Here's the JIRA [1]. I should have the PR posted shortly. > > > > Matt > > > > [1] https://issues.apache.org/jira/browse/NIFI-3207 > > > > On Thu, Dec 15, 2016 at 12:53 PM, Richard St. John <[email protected]> > > wrote: > > > >> I should be able to test tonight. > >> > >> On Thu, Dec 15, 2016 at 12:45 PM Matt Gilman <[email protected]> > >> wrote: > >> > >> > 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.URLConnectionClientHandl > >> er.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(ThreadPoolReque > >> stReplicator. > >> > > 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.AbstractRootElementProvide > >> r.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.URLConnectionClientHandl > >> er._invoke( > >> > > URLConnectionClientHandler.java:217) > >> > > ~[jersey-client-1.19.jar:1.19] > >> > > at > >> > > com.sun.jersey.client.urlconnection.URLConnectionClientHandl > >> er.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(MarshallerI > >> mpl.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.AbstractRootElementProvide > >> r.writeTo( > >> > > AbstractRootElementProvider.java:179) > >> > > ~[jersey-core-1.19.jar:1.19] > >> > > at > >> > > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvide > >> r.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(HttpsCli > >> ent.java:559) > >> > > ~[na:1.8.0_112] > >> > > at > >> > > sun.net.www.protocol.https.AbstractDelegateHttpsURLConnectio > >> n.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$St > >> ringImplImpl. > >> > > writeLeafElement(RuntimeBuiltinLeafInfoImpl.java:1045) > >> > > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > >> > > at > >> > > com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$St > >> ringImplImpl. > >> > > 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(MarshallerI > >> mpl.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.URLConnectionClientHandl > >> er.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(ThreadPoolReque > >> stReplicator. > >> > > 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.AbstractRootElementProvide > >> r.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.URLConnectionClientHandl > >> er._invoke( > >> > > URLConnectionClientHandler.java:217) > >> > > ~[jersey-client-1.19.jar:1.19] > >> > > at > >> > > com.sun.jersey.client.urlconnection.URLConnectionClientHandl > >> er.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(MarshallerI > >> mpl.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.AbstractRootElementProvide > >> r.writeTo( > >> > > AbstractRootElementProvider.java:179) > >> > > ~[jersey-core-1.19.jar:1.19] > >> > > at > >> > > com.sun.jersey.core.provider.jaxb.AbstractRootElementProvide > >> r.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(HttpsCli > >> ent.java:559) > >> > > ~[na:1.8.0_112] > >> > > at > >> > > sun.net.www.protocol.https.AbstractDelegateHttpsURLConnectio > >> n.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$St > >> ringImplImpl. > >> > > writeLeafElement(RuntimeBuiltinLeafInfoImpl.java:1045) > >> > > ~[jaxb-impl-2.2.3-1.jar:2.2.3] > >> > > at > >> > > com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl$St > >> ringImplImpl. > >> > > 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(MarshallerI > >> mpl.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. > >> > > > >> > > >> -- > >> > >> ---------------------------- > >> Richard St. John, Ph.D. > >> Senior Software Engineer, Applied Mathematician > >> Asymmetrik, Ltd. > >> > > > > > -- ---------------------------- Richard St. John, Ph.D. Senior Software Engineer, Applied Mathematician Asymmetrik, Ltd.
