Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- * To change this license header, choose License Headers in Project Properties.
- * To change this template file, choose Tools | Templates
- * and open the template in the editor.
- */
- package com.flopewsserver;
- import com.flopewsserver.controller.Database_Controller;
- import com.flopewsserver.converter.JSONStringtoPOJO;
- import com.flopewsserver.entities.User;
- import java.util.logging.Logger;
- import java.io.IOException;
- import static java.lang.System.out;
- import java.util.HashMap;
- import java.util.logging.Level;
- import javax.persistence.EntityManager;
- import javax.persistence.EntityManagerFactory;
- import javax.persistence.Persistence;
- import javax.websocket.OnMessage;
- import javax.websocket.OnOpen;
- import javax.websocket.Session;
- import javax.websocket.server.ServerEndpoint;
- /**
- *
- * @author Florian
- */
- @ServerEndpoint("/security")
- public class SecurityWebsocketEndpoint {
- private Session session;
- private static final Logger log = Logger.getLogger(SecurityWebsocketEndpoint.class.getName());
- private final static HashMap<String, SecurityWebsocketEndpoint> sockets = new HashMap<>();
- private String myUniqueId;
- //the #uniqueID is created to create a unique identifier for the client that requested a connection, the ID is then sent back to the client and is stored in a HashMap together
- //with the SecurityWebsocketEndpoint-Objekt to identify established connections
- //https://stackoverflow.com/questions/17080216/how-to-send-message-to-particular-websocket-connection-using-java-server/17089997
- private String getMyUniqueId() {
- // unique ID from this class' hash code
- return Integer.toHexString(this.hashCode());
- }
- private void sendClient(String str) {
- try {
- this.session.getBasicRemote().sendText(str);
- } catch (IOException e) {
- }
- }
- @OnOpen
- public void onConnect(Session session) {
- // save session so we can send
- this.session = session;
- // this unique ID and send ID to client
- this.myUniqueId = this.getMyUniqueId();
- System.out.println(myUniqueId +"IDUnique");
- this.sendClient(myUniqueId);
- // map this unique ID to this connection
- SecurityWebsocketEndpoint.sockets.put(this.myUniqueId, this);}
- @OnMessage
- public void OnMessage(Session from,String message){
- message = message.substring(6);
- JSONStringtoPOJO conv = new JSONStringtoPOJO();
- User loginuser;
- loginuser = conv.convertJSONStringtoPOJOUSER(message);
- IncomingMessagesHandler dis;
- dis = new IncomingMessagesHandler();
- dis.test(loginuser);
- System.out.println(dis.test(loginuser));
- String loginserver = login(loginuser);
- System.out.println(loginserver);
- try { this.session.getBasicRemote().sendText(loginserver);}
- catch (IOException ex) {
- Logger.getLogger(SecurityWebsocketEndpoint.class.getName()).log(Level.SEVERE, null,ex);}
- }
- private String login(User loginuser) throws IllegalStateException {
- String loginsuccess = "false";
- User databaseuser = null;
- Database_Controller dc = new Database_Controller();
- try {EntityManagerFactory emf = Persistence.createEntityManagerFactory("PU");
- EntityManager em = emf.createEntityManager();
- }
- catch (Exception e){e.printStackTrace(out); System.out.println(e.toString()+"stack");return loginsuccess;}
- return loginsuccess;
- }}
- Information: HHH000318: Could not find any META-INF/persistence.xml file in the classpath
- Information: Unhandled exception in endpoint com.flopewsserver.SecurityWebsocketEndpoint.
- java.lang.NoSuchMethodError: org.jboss.logging.Logger.debugf(Ljava/lang/String;I)V
- at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:98)
- at org.hibernate.jpa.HibernatePersistenceProvider.getEntityManagerFactoryBuilderOrNull(HibernatePersistenceProvider.java:71)
- at org.hibernate.jpa.HibernatePersistenceProvider.createEntityManagerFactory(HibernatePersistenceProvider.java:52)
- at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:79)
- at javax.persistence.Persistence.createEntityManagerFactory(Persistence.java:54)
- at com.flopewsserver.controller.Database_Controller.createEntityManager(Database_Controller.java:33)
- at com.flopewsserver.SecurityWebsocketEndpoint.login(SecurityWebsocketEndpoint.java:119)
- at com.flopewsserver.SecurityWebsocketEndpoint.OnMessage(SecurityWebsocketEndpoint.java:105)
- at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
- at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
- at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
- at java.lang.reflect.Method.invoke(Method.java:498)
- at org.glassfish.tyrus.core.AnnotatedEndpoint.callMethod(AnnotatedEndpoint.java:520)
- at org.glassfish.tyrus.core.AnnotatedEndpoint.access$100(AnnotatedEndpoint.java:87)
- at org.glassfish.tyrus.core.AnnotatedEndpoint$WholeHandler$1.onMessage(AnnotatedEndpoint.java:619)
- at org.glassfish.tyrus.core.TyrusSession.notifyMessageHandlers(TyrusSession.java:576)
- at org.glassfish.tyrus.core.TyrusEndpointWrapper.onMessage(TyrusEndpointWrapper.java:871)
- at org.glassfish.tyrus.core.TyrusWebSocket.onMessage(TyrusWebSocket.java:212)
- at org.glassfish.tyrus.core.frame.TextFrame.respond(TextFrame.java:139)
- at org.glassfish.tyrus.core.ProtocolHandler.process(ProtocolHandler.java:807)
- at org.glassfish.tyrus.core.TyrusWebSocketEngine$TyrusReadHandler.handle(TyrusWebSocketEngine.java:562)
- at org.glassfish.tyrus.servlet.TyrusHttpUpgradeHandler.onDataAvailable(TyrusHttpUpgradeHandler.java:173)
- at org.apache.catalina.connector.InputBuffer$ReadHandlerImpl.processDataAvailable(InputBuffer.java:488)
- at org.apache.catalina.connector.InputBuffer$ReadHandlerImpl.onDataAvailable(InputBuffer.java:453)
- at org.glassfish.grizzly.http.io.InputBuffer.invokeHandler(InputBuffer.java:1089)
- at org.glassfish.grizzly.http.io.InputBuffer.invokeHandlerOnProperThread(InputBuffer.java:1080)
- at org.glassfish.grizzly.http.io.InputBuffer.append(InputBuffer.java:963)
- at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:271)
- at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119)
- at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:283)
- at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:200)
- at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:132)
- at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:111)
- at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77)
- at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:536)
- at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112)
- at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117)
- at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56)
- at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137)
- at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:591)
- at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:571)
- at java.lang.Thread.run(Thread.java:748)
- T E S T S
- -------------------------------------------------------
- Running CRUD
- Mär 07, 2018 11:13:59 AM org.hibernate.jpa.internal.util.LogHelper logPersistenceUnitInformation
- INFO: HHH000204: Processing PersistenceUnitInfo [
- name: PU
- ...]
- Mär 07, 2018 11:13:59 AM org.hibernate.Version logVersion
- INFO: HHH000412: Hibernate Core {5.2.13.Final}
- Mär 07, 2018 11:13:59 AM org.hibernate.cfg.Environment <clinit>
- INFO: HHH000206: hibernate.properties not found
- Mär 07, 2018 11:13:59 AM org.hibernate.annotations.common.reflection.java.JavaReflectionManager <clinit>
- INFO: HCANN000001: Hibernate Commons Annotations {5.0.1.Final}
- Mär 07, 2018 11:13:59 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl configure
- WARN: HHH10001002: Using Hibernate built-in connection pool (not for production use!)
- Mär 07, 2018 11:13:59 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
- INFO: HHH10001005: using driver [com.mysql.jdbc.Driver] at URL [jdbc:mysql://localhost:3306/database_anzeige]
- Mär 07, 2018 11:13:59 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
- INFO: HHH10001001: Connection properties: {user=root, password=****}
- Mär 07, 2018 11:13:59 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl buildCreator
- INFO: HHH10001003: Autocommit mode: false
- Mär 07, 2018 11:13:59 AM org.hibernate.engine.jdbc.connections.internal.DriverManagerConnectionProviderImpl$PooledConnections <init>
- INFO: HHH000115: Hibernate connection pool size: 20 (min=1)
- Wed Mar 07 11:13:59 CET 2018 WARN: Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be established by default if explicit option isn't set. For compliance with existing applications not using SSL the verifyServerCertificate property is set to 'false'. You need either to explicitly disable SSL by setting useSSL=false, or set useSSL=true and provide truststore for server certificate verification.
- Mär 07, 2018 11:14:00 AM org.hibernate.dialect.Dialect <init>
- INFO: HHH000400: Using dialect: org.hibernate.dialect.MySQL57Dialect
- Mär 07, 2018 11:14:00 AM org.hibernate.hql.internal.QueryTranslatorFactoryInitiator initiateService
- INFO: HHH000397: Using ASTQueryTranslatorFactory
- <?xml version="1.0" encoding="UTF-8"?>
- <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd">
- <persistence-unit name="PU" transaction-type="JTA">
- <provider>org.hibernate.jpa.HibernatePersistenceProvider</provider>
- <properties>
- <property name="javax.persistence.jdbc.driver" value="com.mysql.jdbc.Driver"/>
- <property name="javax.persistence.jdbc.url" value="jdbc:mysql://localhost:3306/database_anzeige"/>
- <property name="javax.persistence.jdbc.user" value="root"/>
- <property name="javax.persistence.jdbc.password" value="30Bore300"/>
- </properties>
- </persistence-unit>
- </persistence>
- <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
- <groupId>com.flope</groupId>
- <artifactId>Anzeigeprojekt_Server</artifactId>
- <version>1.0-SNAPSHOT</version>
- <packaging>war</packaging>
- <dependencies>
- <dependency>
- <groupId>junit</groupId>
- <artifactId>junit</artifactId>
- <version>4.12</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>org.hamcrest</groupId>
- <artifactId>hamcrest-core</artifactId>
- <version>1.3</version>
- <scope>test</scope>
- </dependency>
- <dependency>
- <groupId>com.fasterxml.jackson.core</groupId>
- <artifactId>jackson-databind</artifactId>
- <version>2.6.7.1</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate.javax.persistence</groupId>
- <artifactId>hibernate-jpa-2.1-api</artifactId>
- <version>1.0.0.Final</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-core</artifactId>
- <version>5.2.13.Final</version>
- <exclusions>
- <exclusion>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>mysql</groupId>
- <artifactId>mysql-connector-java</artifactId>
- <version>5.1.42</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-entitymanager</artifactId>
- <version>5.2.13.Final</version>
- </dependency>
- <dependency>
- <groupId>org.apache.shiro</groupId>
- <artifactId>shiro-core</artifactId>
- <version>1.3.2</version>
- </dependency>
- <dependency>
- <groupId>org.hibernate</groupId>
- <artifactId>hibernate-jpamodelgen</artifactId>
- <version>5.2.13.Final</version>
- <exclusions>
- <exclusion>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging</artifactId>
- </exclusion>
- </exclusions>
- </dependency>
- <dependency>
- <groupId>org.jboss.logging</groupId>
- <artifactId>jboss-logging</artifactId>
- <version>3.3.1.Final</version>
- </dependency>
- <dependency>
- <groupId>javax</groupId>
- <artifactId>javaee-api</artifactId>
- <version>8.0</version>
- <scope>provided</scope>
- </dependency>
- </dependencies>
- <build>
- <finalName>Anzeigeprojekt_Server</finalName>
- </build>
- <repositories>
- <repository>
- <id>unknown-jars-temp-repo</id>
- <name>A temporary repository created by NetBeans for libraries and jars it could not identify. Please replace the dependencies in this repository with correct ones and delete this repository.</name>
- <url>file:${project.basedir}/lib</url>
- </repository>
- </repositories>
- <properties>
- <maven.compiler.source>1.8</maven.compiler.source>
- <maven.compiler.target>1.8</maven.compiler.target>
- <failOnMissingWebXml>false</failOnMissingWebXml>
- </properties>
- </project>
Add Comment
Please, Sign In to add comment