No niestety całego projektu nie będę mógł raczej wrzucić (firma). Przy okazji zrobiłem rzecz podstawową z podstawowych i gdzieś na początku metody wrzuciłem sobie listowanie plików w "." i okazało się, że jako Working Directory jest ustawiony mój katalog domowy. Zmieniłem więc Debug Configuration na coś takiego:
i w momencie gdy robię
File d = new File(".");
File[] pliki = d.listFiles();
to mam już tylko META-INF i WEB-INF czyli niby tak jak powinno. Co nie zmienia faktu, że dalej nie działa i rzuca tym samym wyjątkiem co na początku :/ Cały kod tej klasy wygląda tak (projekt NIE jest Mavenovy)
@SuppressWarnings("unused")
@Path("/rxMessageHandler")
public class RxMessageHandler {
// @PersistenceContext(unitName = "hibernate_JPA")
// private EntityManager entitymanager;
@POST
@Consumes(MediaType.APPLICATION_JSON)
public Response rxMessageHandler(String data) {
File d = new File(".");
File[] pliki = d.listFiles();
EntityManagerFactory emfactory = Persistence.createEntityManagerFactory( "hibernate_JPA" );
//
EntityManager entitymanager = emfactory.createEntityManager( );
// Jackson
ObjectMapper objectMapper = new ObjectMapper();
JsonNode rootNode = null;
JsonNode nodeRx = null;
JsonNode noteGwrx;
try {
// parsowanie drzewa JSON z zapytania http-post
rootNode = objectMapper.readTree(data);
} catch (JsonProcessingException e) {
// TODO Auto-generated catch block
System.out.println("-- JsonProcessingException");
System.out.println("- Zawartosc JSON: " + data.toString());
System.out.println("- Koniec zawartosci");
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
MessageRx msgRx = new MessageRx();
try {
msgRx = objectMapper.readValue(data, MessageRx.class);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
Rx rx = msgRx.getRx();
RawPayloads rp = new RawPayloads();
rp.setMoteeui(Long.parseLong(rx.getMoteeui(), 16));
rp.setPayload(rx.getUserdata().getPayload());
rp.setPayloadDecoded(Base64.getDecoder().decode(rp.getPayload()));
rp.setPort((byte)rx.getUserdata().getPort());
entitymanager.getTransaction( ).begin( );
entitymanager.persist( rp );
entitymanager.getTransaction( ).commit( );
entitymanager.close( );
LoraMessage lm = GupsyParser.parse(rp.getPayloadDecoded(), rp.getPort());
return null;
}
}
Drzewko projektu wygląda tak:
A struktura katalogów tak:
.:
razem 32
drwxrwxr-x 6 mlubecki mlubecki 4096 paź 18 15:25 .
drwxrwxr-x 32 mlubecki mlubecki 4096 paź 18 15:14 ..
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 18 15:25 build
-rw-rw-r-- 1 mlubecki mlubecki 822 paź 13 18:08 .classpath
-rw-rw-r-- 1 mlubecki mlubecki 1006 paź 7 15:05 .project
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 7 15:05 .settings
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 src
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 WebContent
./build:
razem 12
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 18 15:25 .
drwxrwxr-x 6 mlubecki mlubecki 4096 paź 18 15:25 ..
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 18 15:25 classes
./build/classes:
razem 8
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 18 15:25 .
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 18 15:25 ..
./.settings:
razem 32
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 7 15:05 .
drwxrwxr-x 6 mlubecki mlubecki 4096 paź 18 15:25 ..
-rw-rw-r-- 1 mlubecki mlubecki 555 paź 7 15:05 .jsdtscope
-rw-rw-r-- 1 mlubecki mlubecki 357 paź 7 15:05 org.eclipse.jdt.core.prefs
-rw-rw-r-- 1 mlubecki mlubecki 471 paź 13 18:08 org.eclipse.wst.common.component
-rw-rw-r-- 1 mlubecki mlubecki 324 paź 7 15:05 org.eclipse.wst.common.project.facet.core.xml
-rw-rw-r-- 1 mlubecki mlubecki 49 paź 7 15:05 org.eclipse.wst.jsdt.ui.superType.container
-rw-rw-r-- 1 mlubecki mlubecki 6 paź 7 15:05 org.eclipse.wst.jsdt.ui.superType.name
./src:
razem 20
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 .
drwxrwxr-x 6 mlubecki mlubecki 4096 paź 18 15:25 ..
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 13 17:48 hconfig
-rw-rw-r-- 1 mlubecki mlubecki 1514 paź 7 14:28 Main.java
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 pl
./src/hconfig:
razem 12
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 13 17:48 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 ..
-rw-rw-r-- 1 mlubecki mlubecki 1985 paź 10 15:20 hibernate.cfg.xml
./src/pl:
razem 12
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 ..
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 ****
./src/pl/***:
razem 12
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 .
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 ..
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 ******
./src/pl//:
razem 12
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 .
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 ..
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 10 10:08 ********
./src/pl///******:
razem 16
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 10 10:08 .
drwxrwxr-x 3 mlubecki mlubecki 4096 wrz 28 13:30 ..
drwxrwxr-x 5 mlubecki mlubecki 4096 paź 10 14:40 kerlink
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 10 10:08 sensors
./src/pl///******/kerlink:
razem 20
drwxrwxr-x 5 mlubecki mlubecki 4096 paź 10 14:40 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 10 10:08 ..
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 10 14:41 db
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 18 13:35 json
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 18 15:14 ws
./src/pl///******/kerlink/db:
razem 16
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 10 14:41 .
drwxrwxr-x 5 mlubecki mlubecki 4096 paź 10 14:40 ..
-rw-rw-r-- 1 mlubecki mlubecki 90 paź 10 14:40 package-info.java
-rw-rw-r-- 1 mlubecki mlubecki 1441 paź 12 11:16 RawPayloads.java
./src/pl///******/kerlink/json:
razem 32
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 18 13:35 .
drwxrwxr-x 5 mlubecki mlubecki 4096 paź 10 14:40 ..
-rw-rw-r-- 1 mlubecki mlubecki 968 paź 10 13:22 GwRX.java
-rw-rw-r-- 1 mlubecki mlubecki 227 paź 10 13:16 MessageRx.java
-rw-rw-r-- 1 mlubecki mlubecki 582 paź 10 10:08 MoteTX.java
-rw-rw-r-- 1 mlubecki mlubecki 92 paź 10 10:08 package-info.java
-rw-rw-r-- 1 mlubecki mlubecki 682 paź 10 13:22 Rx.java
-rw-rw-r-- 1 mlubecki mlubecki 874 paź 10 13:22 UserData.java
./src/pl///******/kerlink/ws:
razem 16
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 18 15:14 .
drwxrwxr-x 5 mlubecki mlubecki 4096 paź 10 14:40 ..
-rw-rw-r-- 1 mlubecki mlubecki 90 paź 10 10:08 package-info.java
-rw-rw-r-- 1 mlubecki mlubecki 3516 paź 18 15:17 RxMessageHandler.java
./src/pl///******/sensors:
razem 12
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 10 10:08 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 10 10:08 ..
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 7 14:56 xxxxx
./src/pl///******sensors/xxxxx:
razem 16
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 7 14:56 .
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 10 10:08 ..
drwxrwxr-x 2 mlubecki mlubecki 4096 wrz 28 10:10 data
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 12 10:51 parser
./src/pl///******/sensors/xxxxxx/data:
razem 16
drwxrwxr-x 2 mlubecki mlubecki 4096 wrz 28 10:10 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 7 14:56 ..
-rw-rw-r-- 1 mlubecki mlubecki 3346 paź 12 13:41 LoraMessage.java
-rw-rw-r-- 1 mlubecki mlubecki 98 wrz 28 10:10 package-info.java
./src/pl///******/sensors/xxxxxxx/parser:
razem 16
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 12 10:51 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 7 14:56 ..
-rw-rw-r-- 1 mlubecki mlubecki 2249 paź 12 12:30 xxxxxParser.java
-rw-rw-r-- 1 mlubecki mlubecki 100 paź 7 14:56 package-info.java
./WebContent:
razem 16
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 .
drwxrwxr-x 6 mlubecki mlubecki 4096 paź 18 15:25 ..
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 13 17:48 META-INF
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 18 13:53 WEB-INF
./WebContent/META-INF:
razem 16
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 13 17:48 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 ..
-rw-rw-r-- 1 mlubecki mlubecki 39 paź 7 15:05 MANIFEST.MF
-rw-rw-r-- 1 mlubecki mlubecki 1458 paź 13 17:47 persistence.xml
./WebContent/WEB-INF:
razem 16
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 18 13:53 .
drwxrwxr-x 4 mlubecki mlubecki 4096 paź 18 14:55 ..
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 7 15:24 lib
-rw-rw-r-- 1 mlubecki mlubecki 866 paź 10 10:09 web.xml
./WebContent/WEB-INF/lib:
razem 30204
drwxrwxr-x 2 mlubecki mlubecki 4096 paź 7 15:24 .
drwxrwxr-x 3 mlubecki mlubecki 4096 paź 18 13:53 ..
-rw-rw-r-- 1 mlubecki mlubecki 445288 cze 19 2014 antlr-2.7.7.jar
-rw-r--r-- 1 mlubecki mlubecki 14765 paź 7 2015 aopalliance-repackaged-2.4.0-b31.jar
-rw-r--r-- 1 mlubecki mlubecki 379036 paź 7 2015 asm-debug-all-5.0.4.jar
(....) i reszta bibliotek
Persistence.xml wygląda niezmiennie tak:
<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.0" xmlns="http://java.sun.com/xml/ns/persistence"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd">
<persistence-unit name="hibernate_JPA" transaction-type="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<class>pl.yyyy</class>
<class>pl.xxx</class>
<properties>
<property name="hibernate.show_sql" value="true" />
<property name="hibernate.format_sql" value="true" />
<property name="javax.persistence.jdbc.url" value="jdbc:postgresql://eee/xxxx"/>
<property name="javax.persistence.jdbc.user" value="java-process"/>
<property name="javax.persistence.jdbc.password" value="xxx"/>
<property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
<property name="hibernate.c3p0.min_size" value="5" />
<property name="hibernate.c3p0.max_size" value="20" />
<property name="hibernate.c3p0.timeout" value="300" />
<property name="hibernate.c3p0.max_statements" value="50" />
<property name="hibernate.c3p0.idle_test_period" value="3000" />
</properties>
</persistence-unit>
</persistence>