Java

Syndicate content 11 

Astronomers’ tools

5 years ago, on December 19, 2013, the ESA launched an orbital telescope called Gaia. Learn more about the Gaia mission on the official website of the European Space Agency or in the article by Vitaly Egorov (Billion pixels for a billion stars).

However, few people know what technology the agency chose for storing and processing the data collected by Gaia. Two years before the launch, in 2011, the developers were considering a number of candidates (see “Astrostatistics and Data Mining” by Luis Manuel Sarro, Laurent Eyer, William O’Mullane, Joris De Ridder, pp. 111-112):

Comparing the technologies side-by-side produced the following results (source):

TechnologyTime
DB213min55s
PostgreSQL 814min50s
PostgreSQL 96min50s
Hadoop3min37s
Cassandra3min37s
Caché2min25s

The first four will probably sound familiar even to schoolchildren. But what is Caché XEP?

Last comment 9 January 2019
1 3
450

views

+ 8

rating

As we all know, Caché is a great database that accomplishes lots of tasks within itself. However, what do you do when you need to access an external database? One way is to use the Caché SQL Gateway via JDBC. In this article, my goal is to answer the following questions to help you familiarize yourself with the technology and debug some common problems

Last comment 28 December 2018
2 4
1724

views

+ 8

rating

InterSystems has completed the verification process for OpenJDK 8.

Customers now have the option to either use the Oracle JDK, or the OpenJDK with all InterSystems products and versions that support Java 8.
 
Support for future versions will continue to be supported on both of these Java Development Kits.

Last comment 4 February 2019
2 2
186

views

+ 7

rating

IRIS is a powerful platform and one of the new features is the Java Business Host (DOC: Connecting Systems Using Java Business Hosts) that allow you to develop Business Services and Business Operations directly in Java (JavaDocs of the InterSystems Gateway Package).

I was testing this feature using an IRIS Docker image, but this image doesn't come with Java, the image is a bare Ubuntu image plus IRIS. So I had to build a new image adding the Java stuff. After some research I finally get this Dockerfile

Last comment 8 January 2019
1 3
229

views

+ 3

rating

Working on implementation FHIR to my project, I found interesting project HAPI-FHIR, which could help me to quickly launch my FHIR api server with InterSystems Caché as a storage, because this projects uses Hibernate to connect to database, as an example they use DerbyDB. I tried to change settings to use InterSystems Caché, but unfortunately it does not work and throw some errors inside HIbernate. As I found in Caché documentation, I have not some many options, I just have to set Cache dialect, and set database url.  This projects uses Hibernate 5.1

Error which I get: DROP not supported as a after-use action for global temp table strategy

Maybe somebody faced this error too, and knows how to solve it ?

Last answer 19 October 2016 Last comment 9 November 2018
0 2
893

views

+ 2

rating

With the release of InterSystems IRIS, we're also making available a nifty bit of software that allows you to get the best out of your InterSystems IRIS cluster when working with Apache Spark for data processing, machine learning and other data-heavy fun. Let's take a closer look at how we're making your life as a Data Scientist easier, as you're probably already facing tough big data challenges already, just from the influx of job offers in your inbox!

Last comment 17 May 2018
0 4
458

views

+ 2

rating

This is the first follow up after the post about headstarting SAPJCo3 with Ensemble and HealthShare ( https://community.intersystems.com/post/headstart-connect-sap-using-sapjco3-ensemble-and-healthshare).

Using the wizard which is available with Version 2016.1 and up (currently only through direct call in the webbrowser http://<server>:<port>/csp/<namespace>/EnsPortal.Dialog.SAPJCO.BaseConfiguration.cls ).

Make sure you have a running production with a configured SAPJCoOperation. After entering the SAP Operation field and clicking on Change connect information you should see the „Connect to SAP was succesful“. Indeed this already calls a „PING“ remote function call (RFC)

Last comment 27 August 2016
0 2
268

views

+ 1

rating

Hi,

I ran into the Issue https://hibernate.atlassian.net/browse/HHH-10620. The workaround  described at https://community.intersystems.com/post/support-java-hibernate-5 worked for me. I'm using Hibernate Version 5.3.2.Final.

It would be nice if someone from InterSystems could fix the the problem in Hibernate. That was mentioned in https://community.intersystems.com/post/support-java-hibernate-5 but it doesn't seem to have happened.

Last answer 13 November 2018 Last comment 13 November 2018
1 2
112

views

+ 1

rating

Hello everyone,

I'm trying to authenticate a user(Health Share clinician) from a Java Application. 

I 'm already connected to Caché and able to run SQL commands.

My question is: How can I authenticate a user using only SQL? In fact, what I want is verify if the users exists in the base and if the given password is the same used in Health Share.

There is a column 'password' in Security.users table but I'm not able to see its content, even so, I don't know which hash function to use to compare with.

Last answer 26 August 2016 Last comment 29 August 2016
0 2
669

views

+ 1

rating

Hi

Totally new to IRIS and Cache.

Trying to evaluate it and work out how we could use it.

As a standard application database. Object or relational etc. does not matter. 

Issue is ObjectScript.

So:

1) Can we develop, maintain and use an IRIS database and never use ObjectScript i.e. use only Java, Python, C++ interfaces etc. (exactly which one does not matter)? Would that make designing and using the IRIS database more prone to inefficiency and error?

2) Can we import an existing Cache database into IRIS and convert its ObjectScript code into Java, Python whatever? Is that a big, difficult, error-prone job?

If the answers are no that may not be a showstopper but would like to know it now. 

A lot of training will be involved in any case I know and Oracle has PL/SQL but ObjectScript developers are rare.

Apologies if the answers are in the doco. Have read some of it but need some indication about the above urgently.

Last answer 14 November 2018 Last comment 14 November 2018
0 2
222

views

+ 1

rating

Hi, Community!  

Please find a new session recording from Global Summit 2017:

Java Business Hosts

 

0 1
0

comments

107

views

+ 1

rating

Starting with 2016.2 the Java XEP binding will no longer support the in-memory connection mode. The in-memory mode was deprecated in earlier versions and applications should switch to the TCP/IP connection mode instead.

The TCP/IP connection mode has bridged the gap in performance to a large extent over the past couple of years and enables the Java client to run on a remote machine.

Let me know if you have any questions or concerns.

This is a cross-post from our compatibility blog: http://blog.intersystems.com/compatibility/2016/04/22/removal-of-in-memo...

0 2
0

comments

148

views

+ 1

rating

Recently we have exercised this with a partner. It may be helpful for others as well.

The basic functionality is to connect to SAP through SAPJCo (Supporting SAPJCo 3.07+).

As a first step have a production with at least two items of the following type:

  • EnsLib.JavaGateway.Service
  • EnsLib.SAP.Operation

Configure the settings for the Java Gateway and the SAP Operation accordingly. And start the production.

 

Now the library sapjco3.jar needs to get imported to be used by further internal functionality.
Therefore start in a browser the webpage for simplified SAPJCo base installation

/csp/<your sapjco namespace>/EnsPortal.Dialog.SAPJCO.BaseConfiguration.cls.

Name the SAPJCo-Operation just in the wizard (in our case it is called „SAPJCoOperation“ within the production)

Last comment 10 January 2017
0 3
550

views

+ 1

rating

This is a FYI for anyone who has experienced the following error after upgrading an existing  instance to any product based on Caché 2017.2.2. In our case, the products are HealthShare HealthConnect for Redhat x64 and for Windows x86-64 but I believe it would be a common problem for any InterSystems product on any platform, if based on Caché 2017.2.2. After upgrading our development instance from 2016.2.2 to 2017.2.2, we experienced the following errors when attempting to start a pre-existing Java Object Gateway that was defined prior to the upgrade:

Execution returned: 'Error: Could not find or load main class '

*ERROR* Return from StartGatewayObject: ERROR #5001: There were errors returned when trying to start the Java Gateway

An error occurred while trying to start the Gateway Server

1 2
0

comments

133

views

+ 1

rating

A new Health Connect customer has a few experienced Java folks on their interface team. As they get more into Health Connect and learn Caché ObjectScript they thought it would be useful to have a list of common Java statements with an equivalent statement in ObjectScript. They mentioned string manipulation as an example, but would be interested in other areas as well.
 
This seems like something that is probably already floating around somewhere. Does anyone have something like this or other "COS jumpstart for Java devs" materials?

Thanks,
Marc

 

Last answer 14 November 2016
0 1
0

comments

217

views

+ 1

rating

I ran the below query in three different modes.  Coordinated Universal Time is 5 hours ahead of Eastern Time so there is difference in value from column 1 and column 2 in ODBC, Display mode, but not in Logical Mode. By default the query executes in ODBC mode when we query the data from outside world(via ODBC connection). 

I don't know  why query 2 and query 3 outputs different from query 1.

Query 1. Ran in Logical mode, DATEPART() took in memory stored timestamp data(stored in UTC)

'Hour ' returned are same for both the columns

Query 2. Ran in ODBC mode, DATEPART() took in memory stored timestamp data(stored in UTC) ,but column1 converts data from logical mode to display mode while column 2 is still in logical mode .

Last answer 23 November 2017 Last comment 24 November 2017
0 1
133

views

0

rating

Hi-

I have searched through documentation, etc and see many mentions of using Ensemble / Health Connect along with the Java Gateway to interface with JMS Queues, but see no specific documentation on how to do this.

Does anyone have any information, or a concise example of using the Java Gateway to allow Ensemble / Health Connect to be able to place messages and retrieve messages from a JMS Queue?

Thanks

 

Last answer 5 December 2017 Last comment 6 March 2018
0 3
311

views

0

rating

Internally we use splunk for monitoring applications and network.

Does Ensemble have a way of exposing internal metrics and/or a way of exposing custom built metrics? 

I've used Deepsee dashboards in the past to monitor Apache Tomcat/Apache Camel/hawtio using JMX rest calls. This is the other way around and ideally I'd like to expose metrics on:

  • HL7v2 messages (broken down into types)
  • Production performance
  • Error and Warning.

Understand Ensemble 2016.2 includes Java 8 JVM and was wondering if the JMX route (plus hawtio) is the way to do this?

Intercepting logging and exposing that in a splunk friendly format may be another option.

Many thanks

Kev

Last answer 12 December 2016 Last comment 3 January 2017
0 2
569

views

0

rating

Hello everybody,

My question would be, how is the recommended way to access Windows shares, also in view of future demads. Of course, I'm also happy about an explanation or code snippet of how the library, which is mentioned in the following , can be used under cache.

The classic jcifs library is easy to use, also with Cache, but as microsoft ceases support for smb1, we are currently looking for alternatives. jcifs-ng is such a library, which we took a closer look at. In java code a jcifs-ng file operation looks like this:

[...]
CIFSContext baseCtx = new BaseContext(new PropertyConfiguration(System.getProperties()));
NtlmPasswordAuthenticator creds = new NtlmPasswordAuthenticator(smbDomain,smbUser,smbPass);
CIFSContext ct = baseCtx.withCredentials(creds);
SmbResource sr = ct.get(smbConnect);

// do something with the SmbRessource which can be either a file or a directory
[...

Last comment 12 February 2019
0 2
0

answers

64

views

0

rating

Short question: Why are (almost) all Java-Classes marked as deprecated? I never had any problems. And the docu for java-bindings are still (version 2016.2.1) not marked as deprecated. I ask, because in my case everything works and the writing of Unittests is easier than in Objectscript and i cannot find a note about the reason of the deprecation (at least in the classes i have checked).

Last answer 18 January 2017
0 2
0

comments

254

views

0

rating

I have a simple app which tries to establish a connection with a Cache database instance via Global API for Java:

import com.intersys.globals.Connection;
import com.intersys.globals.ConnectionContext;

public class Assignment {

    public static void main(String[] args) {
        Connection connection = ConnectionContext.getConnection();
        connection.connect("SAMPLES", "_SYSTEM", "SYS");
    }

}

The expection I am getting:

Exception in thread "main" com.intersys.globals.GlobalsException: lc_conn::connect_device returned Db_err: source: lc_conn::connect() message: lc_conn::connect: CacheSecureStart returned -1:

at com.intersys.globals.internal.GlobalsConnectionJNI.connectImpl(Native Method)
at com.intersys.globals.internal.GlobalsConnectionJNI.connect(GlobalsConnectionJNI.java:107)
at com.tobilko.a3.Assignment.main(Assignment.java:17

Last answer 27 February 2018 Last comment 25 March 2018
0 4
392

views

0

rating

I successfully got everything in this guide to work:  https://community.intersystems.com/post/ensemble-rabbitmq-java-client-qu...

I am now using the information I gained from this guide along side with this guide:

https://www.rabbitmq.com/tutorials/tutorial-one-spring-amqp.html

 

I am running into an issue though. In the RabbitMQ guide I just posted, they have a "Receive message" functionality. I use that alongside with the SendMsg from Ensemble method in the InterSystems guide. The issue I have is the message I receive looks like "[B@2c421093(byte[21])" instead of "Hello from Ensemble!"

Last answer 4 March 2019 Last comment 5 March 2019
0 2
44

views

0

rating