Documentation Backend
This commit is contained in:
1 parent
a928397ebe
commit
5d8ef45265
10 files changed
+450
-12
No files matched your search
Binary file not shown.
@@ -287,3 +287,373 @@ select * from week [42102-214]
|
|||||||
org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax Fehler in SQL Befehl "select * [*]froms days"
|
org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax Fehler in SQL Befehl "select * [*]froms days"
|
||||||
Syntax error in SQL statement "select * [*]froms days"; SQL statement:
|
Syntax error in SQL statement "select * [*]froms days"; SQL statement:
|
||||||
select * froms days [42000-214]
|
select * froms days [42000-214]
|
||||||
|
2023-05-09 00:47:07 jdbc[3]: exception
|
||||||
|
org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax Fehler in SQL Befehl "insert into users (firstname, lastname, mail, password, permission) values ('jonas', 'braus', [*]'brausjonas@gmail.com"
|
||||||
|
Syntax error in SQL statement "insert into users (firstname, lastname, mail, password, permission) values ('jonas', 'braus', [*]'brausjonas@gmail.com"; SQL statement:
|
||||||
|
insert into users (firstname, lastname, mail, password, permission) values ('jonas', 'braus', 'brausjonas@gmail.com [42000-214]
|
||||||
|
2023-05-08 22:53:03 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 22:53:04 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 22:53:40 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 22:54:18 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:01:53 jdbc[4]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:01:57 jdbc[3]: exception
|
||||||
|
org.h2.jdbc.JdbcSQLSyntaxErrorException: Tabelle "USERS" nicht gefunden
|
||||||
|
Table "USERS" not found; SQL statement:
|
||||||
|
select * from USERS [42102-210]
|
||||||
|
2023-05-08 23:02:02 jdbc[5]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:03:52 database: flush
|
||||||
|
org.h2.message.DbException: Allgemeiner Fehler: "org.h2.mvstore.MVStoreException: The file is locked: D:/DH/TIF22A_AnwProjekt_B/backend/database.mv.db [2.1.210/7]"
|
||||||
|
General error: "org.h2.mvstore.MVStoreException: The file is locked: D:/DH/TIF22A_AnwProjekt_B/backend/database.mv.db [2.1.210/7]" [50000-210]
|
||||||
|
at org.h2.message.DbException.get(DbException.java:216)
|
||||||
|
at org.h2.message.DbException.convert(DbException.java:414)
|
||||||
|
at org.h2.mvstore.db.Store.lambda$new$0(Store.java:120)
|
||||||
|
at org.h2.mvstore.MVStore.handleException(MVStore.java:3296)
|
||||||
|
at org.h2.mvstore.MVStore.panic(MVStore.java:585)
|
||||||
|
at org.h2.mvstore.MVStore.<init>(MVStore.java:461)
|
||||||
|
at org.h2.mvstore.MVStore$Builder.open(MVStore.java:4056)
|
||||||
|
at org.h2.mvstore.db.Store.<init>(Store.java:129)
|
||||||
|
at org.h2.engine.Database.<init>(Database.java:324)
|
||||||
|
at org.h2.engine.Engine.openSession(Engine.java:92)
|
||||||
|
at org.h2.engine.Engine.openSession(Engine.java:222)
|
||||||
|
at org.h2.engine.Engine.createSession(Engine.java:201)
|
||||||
|
at org.h2.engine.SessionRemote.connectEmbeddedOrServer(SessionRemote.java:338)
|
||||||
|
at org.h2.jdbc.JdbcConnection.<init>(JdbcConnection.java:122)
|
||||||
|
at org.h2.Driver.connect(Driver.java:59)
|
||||||
|
at com.intellij.database.remote.jdbc.helpers.JdbcHelperImpl.connect(JdbcHelperImpl.java:670)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteDriverImpl.connect(RemoteDriverImpl.java:64)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
Caused by: org.h2.jdbc.JdbcSQLNonTransientException: Allgemeiner Fehler: "org.h2.mvstore.MVStoreException: The file is locked: D:/DH/TIF22A_AnwProjekt_B/backend/database.mv.db [2.1.210/7]"
|
||||||
|
General error: "org.h2.mvstore.MVStoreException: The file is locked: D:/DH/TIF22A_AnwProjekt_B/backend/database.mv.db [2.1.210/7]" [50000-210]
|
||||||
|
at org.h2.message.DbException.getJdbcSQLException(DbException.java:573)
|
||||||
|
at org.h2.message.DbException.getJdbcSQLException(DbException.java:496)
|
||||||
|
... 34 more
|
||||||
|
Caused by: org.h2.mvstore.MVStoreException: The file is locked: D:/DH/TIF22A_AnwProjekt_B/backend/database.mv.db [2.1.210/7]
|
||||||
|
at org.h2.mvstore.DataUtils.newMVStoreException(DataUtils.java:1004)
|
||||||
|
at org.h2.mvstore.FileStore.open(FileStore.java:163)
|
||||||
|
at org.h2.mvstore.MVStore.<init>(MVStore.java:444)
|
||||||
|
... 28 more
|
||||||
|
2023-05-08 23:04:01 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:21:46 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:21:48 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:22:42 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:24:01 jdbc[3]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:24:05 jdbc[4]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:24:06 jdbc[5]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:24:08 jdbc[6]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
|
2023-05-08 23:24:10 jdbc[7]: exception
|
||||||
|
java.sql.SQLClientInfoException: Client info name 'ApplicationName' not supported.
|
||||||
|
at org.h2.jdbc.JdbcConnection.setClientInfo(JdbcConnection.java:1573)
|
||||||
|
at com.intellij.database.remote.jdbc.impl.RemoteConnectionImpl.setClientInfo(RemoteConnectionImpl.java:469)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
|
||||||
|
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77)
|
||||||
|
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
|
||||||
|
at java.base/java.lang.reflect.Method.invoke(Method.java:568)
|
||||||
|
at java.rmi/sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:360)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:200)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport$1.run(Transport.java:197)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:712)
|
||||||
|
at java.rmi/sun.rmi.transport.Transport.serviceCall(Transport.java:196)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:587)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TCPTransport.java:828)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$run$0(TCPTransport.java:705)
|
||||||
|
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
|
||||||
|
at java.rmi/sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.java:704)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
|
||||||
|
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
|
||||||
|
at java.base/java.lang.Thread.run(Thread.java:833)
|
||||||
@@ -12,6 +12,7 @@ import java.util.List;
|
|||||||
|
|
||||||
public class DataBaseHandler
|
public class DataBaseHandler
|
||||||
{
|
{
|
||||||
|
//singleton instance of database handler
|
||||||
private static DataBaseHandler instance = null;
|
private static DataBaseHandler instance = null;
|
||||||
|
|
||||||
public static DataBaseHandler getInstance()
|
public static DataBaseHandler getInstance()
|
||||||
@@ -24,13 +25,16 @@ public class DataBaseHandler
|
|||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//connection to the database
|
||||||
private Connection connection;
|
private Connection connection;
|
||||||
|
//sql statement
|
||||||
private Statement st;
|
private Statement st;
|
||||||
|
|
||||||
public DataBaseHandler()
|
public DataBaseHandler()
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
//connect to the local database
|
||||||
connection = DriverManager.getConnection("jdbc:h2:./database", "adm", "73bgjfdsfJ!934");
|
connection = DriverManager.getConnection("jdbc:h2:./database", "adm", "73bgjfdsfJ!934");
|
||||||
st = connection.createStatement();
|
st = connection.createStatement();
|
||||||
} catch (SQLException e)
|
} catch (SQLException e)
|
||||||
@@ -39,10 +43,12 @@ public class DataBaseHandler
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//method that returns all entries of a day based on the given parameters
|
||||||
public Entry[] getEntries(int dayinweek, int weeknumber, int semesterid, User user)
|
public Entry[] getEntries(int dayinweek, int weeknumber, int semesterid, User user)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
|
//search the correct data in the database
|
||||||
ResultSet rs = st.executeQuery("select distinct e.id, e.dayid, e.usercreatedbyid, e.timestart, e.timeend, e.info " +
|
ResultSet rs = st.executeQuery("select distinct e.id, e.dayid, e.usercreatedbyid, e.timestart, e.timeend, e.info " +
|
||||||
"from entries e, days d, weeks w, semester s " +
|
"from entries e, days d, weeks w, semester s " +
|
||||||
"where e.dayid = d.id and " +
|
"where e.dayid = d.id and " +
|
||||||
@@ -53,15 +59,18 @@ public class DataBaseHandler
|
|||||||
"s.id = " + semesterid);
|
"s.id = " + semesterid);
|
||||||
|
|
||||||
|
|
||||||
boolean editable = false;
|
int editable = 0;
|
||||||
|
|
||||||
|
//a temporary list to save entry objects in
|
||||||
List<Entry> temp = new ArrayList<>();
|
List<Entry> temp = new ArrayList<>();
|
||||||
|
//while there a still entries for the day
|
||||||
while(rs.next())
|
while(rs.next())
|
||||||
{
|
{
|
||||||
editable = false;
|
editable = 0;
|
||||||
if(rs.getInt("usercreatedbyid") == user.getId())
|
//if entry has been created by the requesting user set the entry to editable (or the user is admin)
|
||||||
|
if(rs.getInt("usercreatedbyid") == user.getId() || user.getPermissions() == 1)
|
||||||
{
|
{
|
||||||
editable = true;
|
editable = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
temp.add(
|
temp.add(
|
||||||
@@ -77,6 +86,7 @@ public class DataBaseHandler
|
|||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//return the temporary list as an array
|
||||||
return temp.toArray(new Entry[0]);
|
return temp.toArray(new Entry[0]);
|
||||||
|
|
||||||
} catch (SQLException e)
|
} catch (SQLException e)
|
||||||
@@ -85,6 +95,7 @@ public class DataBaseHandler
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//get a semester object by its name
|
||||||
public Semester findSemester(String name)
|
public Semester findSemester(String name)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -110,6 +121,7 @@ public class DataBaseHandler
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//write a new semester to the database returns if process was successful
|
||||||
public boolean addSemester(Semester s)
|
public boolean addSemester(Semester s)
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -124,6 +136,7 @@ public class DataBaseHandler
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//get a user object by mail and password from the database
|
||||||
public User findUser(String mail, String password)
|
public User findUser(String mail, String password)
|
||||||
{
|
{
|
||||||
|
|
||||||
@@ -149,8 +162,10 @@ public class DataBaseHandler
|
|||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//add a new user object to the database returns if process was successful
|
||||||
public boolean addUser(User user)
|
public boolean addUser(User user)
|
||||||
{
|
{
|
||||||
|
//check if mail and passwort (key user information) is given
|
||||||
if (user.getMail() == null || user.getPassword() == null)
|
if (user.getMail() == null || user.getPassword() == null)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
@@ -158,7 +173,7 @@ public class DataBaseHandler
|
|||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
st.executeUpdate("insert into users (firstname, lastname, mail, password, permission) values (" + "'" + user.getFirstName() + "', '" + user.getLastName() + "', '" + user.getMail() + "', '" + user.getPassword() + "', " + user.getPermissions() + ")");
|
st.executeUpdate("insert into users (firstname, lastname, mail, password, permission) values (" + "'" + user.getFirstName() + "', '" + user.getLastName() + "', '" + user.getMail() + "', '" + user.getPassword() + "', " + 0 + ")");
|
||||||
} catch (SQLException e)
|
} catch (SQLException e)
|
||||||
{
|
{
|
||||||
e.printStackTrace();
|
e.printStackTrace();
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.example.backend.anwprj.Entries;
|
package com.example.backend.anwprj.Entries;
|
||||||
|
|
||||||
|
//entry data class
|
||||||
public class Entry
|
public class Entry
|
||||||
{
|
{
|
||||||
private int id;
|
private int id;
|
||||||
@@ -8,9 +9,9 @@ public class Entry
|
|||||||
private int timestart;
|
private int timestart;
|
||||||
private int timeend;
|
private int timeend;
|
||||||
private String info;
|
private String info;
|
||||||
private boolean editable;
|
private int editable;
|
||||||
|
|
||||||
public Entry(int id, int dayid, int usercreatedbyid, int timestart, int timeend, String info, boolean editable)
|
public Entry(int id, int dayid, int usercreatedbyid, int timestart, int timeend, String info, int editable)
|
||||||
{
|
{
|
||||||
this.id = id;
|
this.id = id;
|
||||||
this.dayid = dayid;
|
this.dayid = dayid;
|
||||||
@@ -70,4 +71,9 @@ public class Entry
|
|||||||
{
|
{
|
||||||
this.info = info;
|
this.info = info;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public int getEditable()
|
||||||
|
{
|
||||||
|
return editable;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.example.backend.anwprj.Semesters;
|
package com.example.backend.anwprj.Semesters;
|
||||||
|
|
||||||
|
//semester data class
|
||||||
public class Semester
|
public class Semester
|
||||||
{
|
{
|
||||||
private int id;
|
private int id;
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.example.backend.anwprj.Users;
|
package com.example.backend.anwprj.Users;
|
||||||
|
|
||||||
|
//user data class
|
||||||
public class User
|
public class User
|
||||||
{
|
{
|
||||||
private int id;
|
private int id;
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.example.backend.anwprj.Users;
|
package com.example.backend.anwprj.Users;
|
||||||
|
|
||||||
|
//mapping of the integer rights to enum
|
||||||
public enum UserPermissions
|
public enum UserPermissions
|
||||||
{
|
{
|
||||||
self(0),
|
self(0),
|
||||||
|
|||||||
@@ -8,19 +8,37 @@ import java.util.Random;
|
|||||||
|
|
||||||
public class UserSessionIDHandler
|
public class UserSessionIDHandler
|
||||||
{
|
{
|
||||||
|
//stores mapping of session ids to users
|
||||||
public static HashMap<String, User> mapping = new HashMap<>();
|
public static HashMap<String, User> mapping = new HashMap<>();
|
||||||
|
|
||||||
|
//returns a user object by its session id (ONLY FOR SERVER INTERNAL USE!)
|
||||||
public static User getUserBySessionID(String sessionID)
|
public static User getUserBySessionID(String sessionID)
|
||||||
{
|
{
|
||||||
return mapping.get(sessionID);
|
return mapping.get(sessionID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static boolean removeUser(String sessionID)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
mapping.remove(sessionID);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
catch(Exception e)
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public static String addUser(String mail, String password)
|
public static String addUser(String mail, String password)
|
||||||
{
|
{
|
||||||
|
//try to get user from database
|
||||||
User user = DataBaseHandler.getInstance().findUser(mail, password);
|
User user = DataBaseHandler.getInstance().findUser(mail, password);
|
||||||
|
|
||||||
|
//if user exists
|
||||||
if(user != null)
|
if(user != null)
|
||||||
{
|
{
|
||||||
|
//generate random session id based on ascii table
|
||||||
byte[] id = new byte[100];
|
byte[] id = new byte[100];
|
||||||
|
|
||||||
for(int i = 0; i < id.length; i++)
|
for(int i = 0; i < id.length; i++)
|
||||||
@@ -31,6 +49,8 @@ public class UserSessionIDHandler
|
|||||||
String generatedString = new String(id, StandardCharsets.US_ASCII);
|
String generatedString = new String(id, StandardCharsets.US_ASCII);
|
||||||
|
|
||||||
mapping.put(generatedString, user);
|
mapping.put(generatedString, user);
|
||||||
|
|
||||||
|
//makes user session expire after ca. 2h
|
||||||
new java.util.Timer().schedule(new java.util.TimerTask(){
|
new java.util.Timer().schedule(new java.util.TimerTask(){
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -39,8 +59,7 @@ public class UserSessionIDHandler
|
|||||||
mapping.remove(generatedString);
|
mapping.remove(generatedString);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
//value to be higher
|
}, 7500000);
|
||||||
}, 5000000);
|
|
||||||
|
|
||||||
return generatedString;
|
return generatedString;
|
||||||
}
|
}
|
||||||
|
|||||||
+14
-3
@@ -2,6 +2,9 @@ package com.example.backend.anwprj.controller;
|
|||||||
|
|
||||||
import com.example.backend.anwprj.DataBaseHandler;
|
import com.example.backend.anwprj.DataBaseHandler;
|
||||||
import com.example.backend.anwprj.Semesters.Semester;
|
import com.example.backend.anwprj.Semesters.Semester;
|
||||||
|
import com.example.backend.anwprj.Users.User;
|
||||||
|
import com.example.backend.anwprj.Users.UserPermissions;
|
||||||
|
import com.example.backend.anwprj.Users.UserSessionIDHandler;
|
||||||
import org.springframework.http.HttpStatus;
|
import org.springframework.http.HttpStatus;
|
||||||
import org.springframework.http.ResponseEntity;
|
import org.springframework.http.ResponseEntity;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
@@ -9,25 +12,33 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
@RestController
|
@RestController
|
||||||
public class SemesterController
|
public class SemesterController
|
||||||
{
|
{
|
||||||
|
//reference to the database handler
|
||||||
private DataBaseHandler db;
|
private DataBaseHandler db;
|
||||||
|
|
||||||
{
|
{
|
||||||
db = DataBaseHandler.getInstance();
|
db = DataBaseHandler.getInstance();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//a new semester add is requested (only allowed for admin users)
|
||||||
@CrossOrigin
|
@CrossOrigin
|
||||||
@PostMapping("/semester")
|
@PostMapping("/semester")
|
||||||
public ResponseEntity<Semester> addSemester(@RequestBody Semester semester)
|
public ResponseEntity<Semester> addSemester(@RequestBody Semester semester, @RequestParam(name="sessionid") String sessionID)
|
||||||
{
|
{
|
||||||
if(db.addSemester(semester))
|
User user = UserSessionIDHandler.getUserBySessionID(sessionID);
|
||||||
|
|
||||||
|
if(user.getPermissions() == UserPermissions.admin.getValue())
|
||||||
{
|
{
|
||||||
return new ResponseEntity<>(semester, HttpStatus.OK);
|
if (db.addSemester(semester))
|
||||||
|
{
|
||||||
|
return new ResponseEntity<>(semester, HttpStatus.OK);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
|
return new ResponseEntity<>(HttpStatus.BAD_REQUEST);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//get a semester object by its name
|
||||||
@CrossOrigin
|
@CrossOrigin
|
||||||
@GetMapping("/semester")
|
@GetMapping("/semester")
|
||||||
public ResponseEntity<Semester> getSemester(@RequestParam(name="name") String name)
|
public ResponseEntity<Semester> getSemester(@RequestParam(name="name") String name)
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
@RestController
|
@RestController
|
||||||
public class UserController
|
public class UserController
|
||||||
{
|
{
|
||||||
|
//reference to the database handler
|
||||||
private DataBaseHandler db;
|
private DataBaseHandler db;
|
||||||
|
|
||||||
{
|
{
|
||||||
@@ -17,24 +18,37 @@ public class UserController
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//adds a new user to the database (cannot create an admin user)
|
||||||
@CrossOrigin
|
@CrossOrigin
|
||||||
@PostMapping("/users")
|
@PostMapping("/users")
|
||||||
public ResponseEntity<String> addUser(@RequestBody User user)
|
public ResponseEntity<String> addUser(@RequestBody User user)
|
||||||
{
|
{
|
||||||
|
//if user was successfully added to database
|
||||||
if(db.addUser(user))
|
if(db.addUser(user))
|
||||||
{
|
{
|
||||||
|
//generate a session id
|
||||||
return new ResponseEntity<String>(UserSessionIDHandler.addUser(user.getMail(), user.getPassword()), HttpStatus.OK);
|
return new ResponseEntity<String>(UserSessionIDHandler.addUser(user.getMail(), user.getPassword()), HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
return new ResponseEntity<String>(HttpStatus.BAD_REQUEST);
|
return new ResponseEntity<String>(HttpStatus.BAD_REQUEST);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//a user wants to login
|
||||||
@CrossOrigin
|
@CrossOrigin
|
||||||
@GetMapping("/users")
|
@GetMapping("/users")
|
||||||
public ResponseEntity<String> login(@RequestParam(name="mail") String mail, @RequestParam(name="password") String password)
|
public ResponseEntity<String> login(@RequestParam(name="mail") String mail, @RequestParam(name="password") String password)
|
||||||
{
|
{
|
||||||
|
//generate a session id for the user trying to login
|
||||||
String sessionID = UserSessionIDHandler.addUser(mail, password);
|
String sessionID = UserSessionIDHandler.addUser(mail, password);
|
||||||
|
|
||||||
return new ResponseEntity<>(sessionID, HttpStatus.OK);
|
return new ResponseEntity<>(sessionID, HttpStatus.OK);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@CrossOrigin
|
||||||
|
@GetMapping("/users/logout")
|
||||||
|
public ResponseEntity<Boolean> logout(@RequestParam(name="sessionid") String sessionID)
|
||||||
|
{
|
||||||
|
boolean success = UserSessionIDHandler.removeUser(sessionID);
|
||||||
|
return new ResponseEntity<>(success, HttpStatus.OK);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Reference in new issue
Block a user