Azure service bus access using Java SDK, Connectivity Mode - java

There are several examples of configuring the service bus environment to use http/https with C#, using the call:
ServiceBusEnvironment.SystemConnectivity.Mode = ConnectivityMode.Http;
My question is - can and how do I do this via a java client?

The newer versions of the SDK (1.0 and later) do not support HTTP connectivity (AMQP only), and the older ones do not support AMQP (HTTP only). As a result there's no "need" for connectivity mode settings.
The Java SDK is AMQP only.
If http is what you want, try Azure SDK for Java older version, which is http only. It can be found at https://github.com/yvgopal/azure-sdk-for-java/blob/0.9/services/azure-servicebus/pom.xml. Be careful with the version of the package as the new AMQP only SDK also has the same package name. You should be good with any version starting with 0.9, but before 1.0. Also note that the SDKs are completely different. Applications written with one SDk don't work with the other SDK.
https://github.com/Azure/azure-service-bus-java/issues/171

Related

Which Java ES client should I use with ElasticSearch 7.6 cluster?

I want to use Java API client provided by ElasticSearch but I don't know if it would be compatible with my cluster.
I saw there was ElasticSearch High Level REST client which has been deprecated for the new Java API client. I could find information about what ES cluster would the High level REST client support but none regarding the new Java API client. Can someone point me in the right direction?
Compatibility information for high level REST client: https://www.elastic.co/guide/en/elasticsearch/client/java-rest/6.8/java-rest-high-compatibility.html
This section is missing for the new Java API client
You need to use Java High Level Client only because New Java Client support only forward compatible, below is what mentioned in documentation.
The Elasticsearch Java client is forward compatible; meaning that the
client supports communicating with greater or equal minor versions of
Elasticsearch. Elasticsearch language clients are only backwards
compatible with default distributions and without guarantees made.
However, You can use Java high level client with Elasticsearch 8.x version with compatibility mode enabled.

Issues in using Kubernetes Java client library in App Engine

I want to use this java client library for Kubernetes from app engine. But I ran into issues because this client library uses okhttp client which doesn't work in app engine as per this link.
The error described in the previous SO link is the exact error I am getting on app engine.
As per this link, okhttp exposes the method which can be over-ridden such that this issue isn't seen. There is actually a library for this here. But the issue is that the OkHttpClient has been moved from package com.squareup.okhttp to okhttp3 from version 3.x onwards in which the changes that I require are present. This old version of okhttp is used in the Kubernetes client library and shows error if I try to set the new okhttp.
Is there any way to solve this issue? Or are there any other client libraries which can be used from app engine. I know of client from fabric8 but it has support only till kubernetes version 1.7.10 as of now. I still haven't tried it on app engine though.
Edit:
Even the fabric8 client has the same issue in app engine. It is trying to get the ProxySelector which is not a whitelisted class in appengine.
Alternatively, you could try the Java 8 runtime where you can use all the standard Java library, unlike the Java 7 runtime which allows only select whitelisted JRE classes. After all, the Java 7 runtime is now deprecated: https://cloud.google.com/appengine/docs/standard/java/runtime
However, do note that there are some differences, so you may want to take a look at the migration guide: https://cloud.google.com/appengine/docs/standard/java/migrating-to-java8

Migration to Cloud Endpoints v2

I have a few Google App Engine standard Java environment applications that are backends for mobile apps, there are both Android and iOS clients.
Some time ago I received an email that the Cloud Endpoints v1 will be no longer supported and that I need to migrate to the new version v2.
What happens to the already existing (and using endpoints v1) mobile clients when I upgrade the version of the server?
My Android clients use maven-generated libs and the integration with iOS is based on discovery docs generated by another maven command.
I'm afraid that after the upgrade the clients will not be able to communicate with my backend anymore (as long as they do not update their libs / docs). As we cannot make the app-users upgrade their apps, I hope that the server changes will not affect all the clients that are already running on production.
No. It will not affect anything. The old version would not be supported after 2, August 2018. The new version has few benefits as given in the documentation.
Reduced request latency
Better integration with App Engine features (such as custom domains)
Official support for Guice configurations
Optionally, new API management features
Please follow the instructions given here. I have shifted to the new version just a few days ago and everything is working as usual.

Will WSO2 Identity Server support Java 5( JDK 1.5)?

I wanted to implement Wso2 authentication and authorization on an old existing java web application in jdk 1.5 and running in oc4j.
Is wso2 identity jars are available in the version 1.5?
We are using IS 5.3 (Latest Version).How can I achieve this in an old application
No, IS 5.3.0 supports only Java 1.7+.
It's very strange to hear such a requirement in 2017. Even Oracle doesn't support Java 1.5 now.

Is WSO2 JAVA 8 ready?

I utilize the WSO2 ESB, App Server, and Data Services modules. We are being forced to move off of JAVA 7 and upgrade to JAVA 8. Does anyone have any information on if WSO2 is compatible with JAVA 8? Thanks!
All the WSO2 products which are based on carbon kernel 4.4.0 or higher version supports Java 8. At the moment following WSO2 products are been released with the Java 8 support.
Governance Registry 5.0.1
Business Process Server 3.5.0
Machine Learner 1.0.0
Complex Event Processor 4.0.0
Application Server 5.3.0
Enterprise Store 2.0.0
Enterprise Service Bus 4.9.0
Governance Registry 5.0.0
You can refer to WSO2 Release Matrix to check the latest WSO2 product releases.
WSO2 ESB 4.9.0 will not work with java 8 in a windows environment although they say it supports java 8. We were told it would but after weeks of trying, we had a video conference with their support team and they realized the issues we were having was with java 8.
The issue we were having was the proxy service would quit working. After starting ESB, I would run a soapUI request. If I went more than 1 minute without running a request again, the service would stop working. My soapUI request would simply spin and never return a response. We would restart the ESB service and my soapUI request would work again but with the same timing issue.
They had me reinstall java 7 and the issue went away. They've created a jira ticket on their end to look into the problem while we continue to use java 7 at this time.
For now we are supporting up to only JDK 1.6 to build our source. But you can run our products using up to JDK 1.7. We still testing further to support up to latest version.
I use WSO2 ESB 4.9.0 and Java 8, I do not have any problems. I use soap proxy and JMS proxy, and also use SOAP UI with it. I did not run on problems such as stopping working. I can put Windows 10 to hibernate, next day open it and proceed sending JMS and Web service requests.

Categories

Resources