You should be using GrpcSslContexts. Tcnative isn't setup correctly for you.
io.netty:netty-tcnative-boringssl-static:1.1.33.Fork14 is not an uberjar; just check its file size. I've not seen an uberjar on Maven Central yet. You should choose a platform-specific jar, as we've documented.
Note also that any uberjar won't work with Netty CR3 because the necessary support code isn't present in that version.
As a side note, grpc-java 0.13.2 depends on Netty CR3, not CR1 like you are using. You will get strange methoddef errors if trying to use tcnative Fork14 with netty CR3. This was mentioned in our release notes.
--
You received this message because you are subscribed to the Google Groups "grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+unsubscribe@googlegroups.com.
To post to this group, send email to grp...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/grpc-io/CAP7rZ4SbfdZ7QZc8yF369_qU3OuvsmeJdJDAY29gkKJSKjqgsw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.
To unsubscribe from this group and stop receiving emails from it, send an email to grpc-io+u...@googlegroups.com.
Thanks a lot for your response. I have now:- Updated Netty to CR3 as per your suggestion- Switched to using the platform-specific version of boringssl-static. FWIW, the reason I had thought this was an uberjar was the documentation here.
- Switched back to using GrpcSslContexts.And now everything works :) Thanks!
Solutions:
=========
1. As suggested by google, use jetty container instead of tomcat, this solution works, but in our production, applications deployed on tomcat container. – No from team
2. On debugging the gRPC code, found that guava version causing the issue, updated the guava version 18.0, (where in some classes missed in previous versions) , solved the problem , but failed while deploying in CF
3. Customized emebed-tomcat-core, and it works fine consistently – but team say no to custom tomcat container.
4. Java –jar apm-asset-xxxx.jar – works fine locally, but need to provide a custom command to CF start, didn’t have luxury to change the CF start process.
5. Finally, trick, the class loader to use tcnative-boring-ssl, library instead of tomcat-core library at runtime, by providing the following dependency in pom.xml. From past 3 days, this solution is working CF.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<exclusions>
<exclusion>
<groupId>org.hibernate</groupId>
<artifactId>*</artifactId>
</exclusion>
<exclusion>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.tomcat.embed</groupId>
<artifactId>tomcat-embed-core</artifactId>
<scope>provided</scope>
</dependency>