javaiorarjcaunrar

Is Resource Adapter Archive (RAR) the same as Roshal ARchive (RAR)?


Are they both referring to the same thing? Are they related at all?

Resource Adapter Archive (RAR) according to Oracle is:

Resource Adapter Archive (RAR): A RAR file holds a resource adapter. Defined by the J2EE Connector Architecture specifications, a resource adapter is a portable component that enables enterprise beans, Web components, and application clients to access resources and foreign enterprise systems. A resource adapter is often referred to as a connector. A RAR file name has the .rar extension

Roshal ARchive (RAR) according to the Wikipedia is

RAR is a proprietary[3] archive file format that supports data compression, error recovery and file spanning. It was developed by a Russian software engineer, Eugene Roshal (the name RAR stands for Roshal ARchive) and the RAR software is licensed by win.rar GmbH.

The main propose behind this question is I'm trying to read Resource Adapter Archive (RAR) from within my Java app without using any third party library. However everyone talks about the Roshal ARchive (RAR) and how it's being a proprietary.

So I'm confused on this point. Is Oracle actually using this proprietary format or is it just a similarity in extension naming?

Whatever the case is, I would like to know if there is an example somewhere on reading text file which is contained in a Resource Adapter Archive (RAR) from within my Java app.


Solution

  • Resource Adapter Archive (RAR) is regular jar file which is regular zip file with some predefined file structure (like manifest file). It could be read by any zip reader.

    Eugene Roshal's RAR is proprietary archive which has nothing common with zip format. It has many (discussable) advantages on zip and used mostly on Windows as WinRAR executable. This WinRAR as an archiver can also read zip files. That's where confusion comes from. WinRAR reads all formats - use it to read both RARs and you will be successful. But no zip archiver will read WinRAR format.