Posts

Showing posts from July, 2013

HIBERNATE JPA:How to deploy a WAR created by Netbeans on a Standalone TOMCAT

Image
HIBERNATE JPA: How to deploy a WAR created by Netbeans on a Standalone TOMCAT Years ago TOMCAT was a two-tailed cat, used as the logo for the mighty F-14A Tomcat plane, when I became mature O_o, Tomcat lost a tail, landed on the ground and now is a well know Servlet Container... I think it lost part of its magic during the landing, and a tail too. Tomcat: Hardware embedded version. During compilation of a web project using hibernate with Netbeans, it copies persistence.xml to a new folder named META-INF under the WEB-INF/classes folder. So if you are having trouble launching your application once it is deployed on TOMCAT and getting the error: javax.persistence.PersistenceException: No Persistence provider for EntityManager named ... Most probably Hibernate is not finding persistence.xml in WEB-INF/classes/META-INF/persistence.xml when deployed under TOMCAT. Copy it by hand from 'conf' folder to WEB-INF/classes/META-INF. And salute me!

Assuring there is only an instance of an application. "There Only Can be One!" (JAVA Code)

Image
Assuring there is only an instance of an application.  " There can be only one " (JAVA Code Version) (HighLander Film 1986). Note: It is important for you life to listen to this film's OST song: "Who Wants to Live Forever" (Queen 1986). But I am almost sure you know that song already, so keep on reading my article. This is year 2013 and, as long as I know, Operating Systems do not give the facility for preventing an application to be launched twice. So it has to be done programmatically. Common ways of getting it done are: Creating a file and blocking it so that the new process cannot get access to it. A funny use of a deadlock. Opening a port and closing the new instance as soon as it checks that the port is already under use by another previous launched instance. Both have advantages and disadvantages. This entry gives code for the second solution. Mind the firewall! Now shut up and gimme tha codez: package com.ramon.talav