NEW RELEASE: J-Integra® for COM v2.8
We have just released the latest version of J-Integra® for COM. Version 2.8 contains some important fixes for memory leaks in J-Integra®'s native mode DLL (ntvinv.dll). Included in the new version are the following updates:
  1. ID 5997: Fixed bug preventing pvarResult from being set to NULL when vtRet==VT_EMPTY.
  2. ID 6005: Fixed bug causing VB-to-Java applications to hang in Windows Vista when run from a VB editor/IDE.
  3. ID 5998: Fixed memory leak in ntvinv when VT_USERDEFINED is used.
  4. ID 6006: Fixed memory leak in ntvinv when SAFEARRAY is used.
  5. ID 6010: Fixed memory leak in ntvinv when BOOLEAN is used.
  6. ID 6011: Fixed memory leak in ntvinv when VT_DISPATCH is used.
To download the latest version, please visit our website at http://j-integra.intrinsyc.com/downloads/.

If you need a new license key for v2.8, please contact our sales team for assistance.

J-Integra® - Windows Vista Support
We have just released new versions of all 4 of our bridging products:
J-Integra® for COM v2.7
J-Integra® for Exchange v2.7
J-Integra® for .NET v2.4
J-Integra® Espresso v1.2
These versions all support Windows Vista as well as Java 6 and Microsoft Office 2007.

To download the latest version of the software, visit the downloads section of our website.

The latest release notes can be found in the online documentation for each product.

No web services for Java and .NET interoperability?
Daniel Rubio talks about why Web Services may not be an option for many companies when it comes to Java and .NET interoperabilty...

No web services for Java and .NET interoperability?

Intrinsyc Retains Microsoft Gold Level Partnership Status
We just got word that Intrinsyc Software has retained its Microsoft Gold Level Partnership Status for another year. Our J-Integra® software is a crucial part of this certification process as each year we submit some of its key components to demonstrate our proficiency in Microsoft technologies and pass various software certification requirements.

Gold Certified Partners "represent the highest level of competence and expertise with Microsoft technologies, and have the closest working relationship with Microsoft."
https://partner.microsoft.com/global/program/programoverview/goldcertpartner
Intrinsyc Software Joins Microsoft in Interop Vendor Alliance

Intrinsyc Software is proud to announce its participation in the Interop Vendor Alliance, a community of software and hardware vendors working together to enhance interoperability with Microsoft systems. The Alliance was established to connect people, data and diverse systems through better interoperability.

“We are very pleased to have Intrinsyc join the Interop Vendor Alliance,” said Sam Rosenbalm, business development manager and director of the Interop Vendor Alliance at Microsoft. “Intrinsyc’s experience in enterprise interoperability software services, and its systems integration expertise, can help deliver more interoperable solutions to our mutual customers.”

Please visit our Interop Vendor Alliance company weblog while you browse the rest of the site for more information on interoperability with Microsoft systems.

J-Integra® for COM v2.6

J-Integra® for COM v2.6 has just been released and includes support for Windows Server 2003 R2, as well as many other updates and bug fixes.

J-Integra® for Exchange v2.6 (which is based on the J-Integra® for COM runtime) has also been released.

The release notes can be found in the online documentation.

New Knowledge Base is Online

We have recently upgraded our online Knowledge Base. New features include:

  • Get instant updates using our new RSS feed!
  • Search articles for all J-Integra products from one convenient location.
  • Articles have been categorized to make searching and browsing easy and convenient.

Please check out the new KB when you get a chance!

J-Integra® for .NET v2.3 Released

J-Integra® for .NET v2.3 has just been released and includes simultaneous .NET Framework 1.1 and 2.0 support.

The release notes can be found in the online documentation.
ESBs not a "Silver Bullet Solution"

As this article points out, ESBs are not a "silver bullet solution to the middleware mess". Within most real-world integration environments, middleware solutions will most likely come from mulitple vendors  (both open source and commercial) rather than a single vendor.

Companies have simply invested too much money in existing systems and protocols to drop them all at once, and they will also need to implement new technologies cheaply and quickly. 

Legacy Integration with Web Services

This article talks about what all is involved in exposing legacy systems as Web Services.

However, [...] the devil is in the details - there will always be a number of drawbacks that developers must face when building and deploying Web Services, regardless of architecture. This article will [...] address some of the pitfalls that developers should be wary of when exposing legacy systems and middleware as Web Services.

Using J-Integra® makes exposing legacy systems as Web Services easier, as it reduces the amount of serializing/deserializing and the amount of SOAP/XML going over the wire. This results in better overall performance and is much faster to implement as there is less programming involved.

Native code still required in SOA

This blog entry by Joe McKendrick suggests that C++ and native code will still be needed in SOA infrastructures due to performance issues with Java and Web services.

"Results of a survey of about 500 Java developers, conducted and posted by CodeFutures, found plenty of interest in service-oriented architecture, but also found many are already having issues in terms of performance bottlenecks."
 
"With the challenges that we’re going to see with Web services and very large messages, C++ and native code may be the only way to go in a lot of instances."
Mapping VB Code to Java Code

When customers wish to program a Java client that access a certain COM application (such as Excel), we often get asked where the javadoc is for that COM component or application.

We do not provide javadoc for individual COM APIs. There are literally thousands, if not millions, of different COM APIs out there in the world and to provide individual javadoc for each one would be impossible.

Because the Java proxies generated by the J-Integra for COM 'com2java' tool are simply mapped from the original COM programming API, you need to refer to the documentation of the COM API to understand what each corresponding Java proxy does.

The comments in the Java proxies are based on the comments found in the COM IDL file. The easiest way to start programming Java source code (which uses J-Integra for COM to access a COM component) is to find a VB example first, and then map the VB code to its Java equivalent. The following KB article covers some basic principles for mapping VB code to its equivalent Java code.

Mapping VB Code to Java Code
http://j-integra.intrinsyc.com/support/com/kb/article.asp?article=113758

SOA's loose coupling makes performance difficult to monitor

Blog entry talking about performance bottlenecks within SOA...

Performance bottlenecks are sometimes more difficult to identify in SOA as well, Metzger points out. “When you have performance issues, the first questions are, ‘what tier is the bottleneck in?’ ‘Is it in the centralized in the Java application tier, or the database tier, or is it really an interaction between the two?’”

http://blogs.zdnet.com/service-oriented/?p=576

Adopting SOA Without Converting Existing Systems

A growing number of users are using our J-Integra® products as "protocol adapters" in order to plug in existing Java, COM, Corba, and .NET systems into a common integration infrastructure or Enterprise Service Bus (ESB).

Increasingly, more and more companies are looking to adopt Service Oriented Architectures (SOA), so we thought it would be useful to dedicate a section of our website to this emerging trend. See how J-Integra® solutions can serve a complementary role to full-featured integration suites and ESBs by bridging the gap between various applications and integration middleware (for example, when Web Services interfaces are unavailable or not desired).

http://j-integra.intrinsyc.com/soa/

Online Demo

Today, I choose to embed Adobe Acrobat inside a Java Frame.  Luckily for me, we have an existing tutorial include step by step and code sample. :)  By now, the product should be finished installing and ready to go.

Flash Demo - Embedding Acrobat in a JFrame
Tutorial - Accessing the Adobe Acrobat Reader Control from Java Swing

I created a flash demo of the steps I took for anyone that is interested.  This is the first time I've done this, so it might be a little rough.  Please feel free to give me some feedback on it such as, include more comments, go slower, etc.

Without further adieu, lets get started.

Current Time: 0 minutes
Doing this at the end of the day is a good motivation for efficiency.

Current Time: 3 minutes
Installed license. (Mental note to self: Install Command Prompt Here)

Current Time: 4 minutes
AWT Proxies generated for Adobe Acrobat 7.0. I'm pleasantly surprised at how easy and painless that was.

Current Time: 25 minutes
Alright, it took a little long here to compile the proxies. And unluckily for me, its not cause I was totally clueless. The instructions used JDK 1.4.2 so I decided to follow along and use that JDK. My default JDK is 1.5. Apparently, java didn't like that and once I started using javac and java from the 1.4 JDK, my system variables stopped being read in. This means that my %CLASSPATH% was not being read into the javac & java commands. I was forced to type in commands like this:

  • javac -classpath %CLASSPATH% JavaPDF.java
  • java -cp %CLASSPATH% -Djava.library.path="c:\program files\j-integra\com\bin" JavaPDF

Not very nice commands.

Once I got everything compiled and running I went back to test it under JDK 1.5 just to see if my "Java Experience" would be any different.  I can happily report that it was a lovely experience and my two commands worked like they should:

  • javac JavaPDF.java
  • java JavaPDF

Completed: 25 minutes
Ran the example and I got a beautiful Acrobat window inside my Java Swing Frame.

Application Interoperability Examples

Over the years we have accumulated an extensive resource of examples demonstrating Java accessing specific application for each of our products.  Quite often we receive an e-mail in support asking "How do I access Application X from Java?" or "Does your product support Java communicating Application X?"  Its very nice to be able to point our customers to complete standalone functional example that demonstrates exactly what they need.

During our recent website update we created specific example pages for each our products for our customers to easily browse the complete listing of application or technology examples.  Included below is a subset of our sample application examples

J-Integra® for COM Examples

J-Integra® for .NET Examples

J-Integra® for Exchange

J-Integra® Espresso

If you don't see any examples of the application integration you are looking for, please contact us for more information.

Too much complexity stifling web services

Web Services are an excellent solution to many types of interoperability challenges, but here is more evidence that they "won't be enough" for some time to come.

Vancouver Architect Forum

Microsoft is hosting an Architect Forum on February 7 in Vancouver, B.C. (Canada).

I will be presenting as part of a number of distinguished enterprise, solution and infrastructure architects. The forum will have specific presentations and discussions on lessons learned and best practices for diverse computing environments containing .NET, J2EE and other technologies. If you’re interested please register.

I’ll be sure to post the presentation I’m giving later on next week. I look forward to seeing you all there.

J-Integra® Website new look
The first iteration is done. Graphics and stuff to be added soon:

http://j-integra.intrinsyc.com

Espresso is mentioned in Richard Turner's blog
We will be using our Espresso technology to create a bi-directional Indigo (WCF) IIOP Channel. Richard Turner, a WCF Program Manager at Microsoft has blogged about it here:

http://blogs.msdn.com/richardt/archive/2005/11/14/492709.aspx