diff --git a/bin/Kapitel7_Angular_Teil2_Praktikum.war b/bin/Kapitel7_Angular_Teil2_Praktikum.war
deleted file mode 100644
index 2026497..0000000
Binary files a/bin/Kapitel7_Angular_Teil2_Praktikum.war and /dev/null differ
diff --git a/bin/build b/bin/build
new file mode 100755
index 0000000..da37364
--- /dev/null
+++ b/bin/build
@@ -0,0 +1,3 @@
+#!/usr/bin/env bash
+
+mvn clean package
diff --git a/bin/deploy b/bin/deploy
new file mode 100755
index 0000000..6ad5a47
--- /dev/null
+++ b/bin/deploy
@@ -0,0 +1,8 @@
+#!/usr/bin/env bash
+
+# deploy the server
+#
+# usage:
+# deploy server/target/ejb-uebung-1.0-SNAPSHOT.jar
+
+cp -v "$1" "$WILDFLY_BASE_DIR/deployments/"
diff --git a/bin/run b/bin/run
new file mode 100755
index 0000000..da756a4
--- /dev/null
+++ b/bin/run
@@ -0,0 +1,6 @@
+#!/usr/bin/env bash
+
+# usage
+# run org.example.demo.uebung1.aufgabe16.Client
+
+(cd client && mvn clean compile && mvn exec:java -Dexec.mainClass="$1")
diff --git a/bin/start b/bin/start
new file mode 100755
index 0000000..ee20d2c
--- /dev/null
+++ b/bin/start
@@ -0,0 +1,8 @@
+#!/usr/bin/env bash
+
+# starts the server
+#
+# usage:
+# start
+
+wildfly-fhs
diff --git a/client/pom.xml b/client/pom.xml
new file mode 100644
index 0000000..ca2d205
--- /dev/null
+++ b/client/pom.xml
@@ -0,0 +1,37 @@
+
+
+ 4.0.0
+
+ de.componentware
+ componentware-parent
+ 1.0-SNAPSHOT
+ ../pom.xml
+
+ ejb-client
+ jar
+
+
+
+ de.componentware
+ ejb-uebung
+ 1.0-SNAPSHOT
+
+
+
+ org.wildfly
+ wildfly-ejb-client-bom
+ 39.0.0.Final
+ pom
+ import
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-compiler-plugin
+ 3.11.0
+
+
+
+
diff --git a/src/main/java/org/example/demo/uebung1/aufgabe16/Client.java b/client/src/main/java/org/example/demo/uebung1/aufgabe16/Client.java
similarity index 86%
rename from src/main/java/org/example/demo/uebung1/aufgabe16/Client.java
rename to client/src/main/java/org/example/demo/uebung1/aufgabe16/Client.java
index 6edafc5..e7926e4 100644
--- a/src/main/java/org/example/demo/uebung1/aufgabe16/Client.java
+++ b/client/src/main/java/org/example/demo/uebung1/aufgabe16/Client.java
@@ -11,8 +11,8 @@ public class Client {
props.setProperty(Context.PROVIDER_URL, "http-remoting://localhost:8080");
InitialContext ctx = new InitialContext(props);
- EncryptorRemote encryptor = (EncryptorRemote) ctx.lookup(
- "ejb:/demo/Encryptor!encryption.EncryptorRemote");
+ String jndiName = "ejb:/ejb-uebung-1.0-SNAPSHOT/Encryptor!org.example.demo.uebung1.aufgabe16.EncryptorRemote";
+ EncryptorRemote encryptor = (EncryptorRemote) ctx.lookup(jndiName);
String original = "Hallo Welt";
String encrypted = encryptor.encrypt(original);
diff --git a/src/main/java/org/example/demo/uebung1/aufgabe17/CounterClient.java b/client/src/main/java/org/example/demo/uebung1/aufgabe17/Client.java
similarity index 76%
rename from src/main/java/org/example/demo/uebung1/aufgabe17/CounterClient.java
rename to client/src/main/java/org/example/demo/uebung1/aufgabe17/Client.java
index 97ba7c9..5a5fdd1 100644
--- a/src/main/java/org/example/demo/uebung1/aufgabe17/CounterClient.java
+++ b/client/src/main/java/org/example/demo/uebung1/aufgabe17/Client.java
@@ -3,7 +3,7 @@ import javax.naming.InitialContext;
import javax.naming.Context;
import java.util.Properties;
-public class CounterClient {
+public class Client {
public static void main(String[] args) throws Exception {
Properties props = new Properties();
props.setProperty(Context.INITIAL_CONTEXT_FACTORY,
@@ -11,8 +11,8 @@ public class CounterClient {
props.setProperty(Context.PROVIDER_URL, "http-remoting://localhost:8080");
InitialContext ctx = new InitialContext(props);
- CounterRemote counter = (CounterRemote) ctx.lookup(
- "ejb:/demo/Counter!counter.CounterRemote?stateful");
+ String jndiName = "ejb:/ejb-uebung-1.0-SNAPSHOT/Counter!org.example.demo.uebung1.aufgabe17.CounterRemote?stateful";
+ CounterRemote counter = (CounterRemote) ctx.lookup(jndiName);
System.out.println(counter.getAndIncrement());
System.out.println(counter.getAndIncrement());
diff --git a/flake.nix b/flake.nix
index 24c2d8c..47f2d03 100644
--- a/flake.nix
+++ b/flake.nix
@@ -129,7 +129,7 @@
devShells.default = with pkgs;
mkShell {
- buildInputs = [wildfly-fhs pkgs.openjdk21];
+ buildInputs = [wildfly-fhs pkgs.openjdk21 maven];
nativeBuildInputs = [];
packages =
[
@@ -143,21 +143,8 @@
shellHook =
# bash
''
+ export PATH="bin/:$PATH"
export WILDFLY_BASE_DIR="$HOME/.wildfly-fhs-base"
-
- build() {
- # builds target/demo.war
- mvn clean package
- }
-
- # e.g. 'deploy target/demo.war'
- deploy() {
- cp -v "$1" "$WILDFLY_BASE_DIR/deployments/"
- }
-
- start() {
- wildfly-fhs
- }
'';
};
};
diff --git a/pom.xml b/pom.xml
old mode 100755
new mode 100644
index 8db13bb..6d67ea5
--- a/pom.xml
+++ b/pom.xml
@@ -1,76 +1,17 @@
-
-
+
+
4.0.0
- org.example
- demo
+ de.componentware
+ componentware-parent
1.0-SNAPSHOT
- demo
- war
+ pom
+
+ server
+ client
+
+ 21
+ 21
UTF-8
- UTF-8
- 21
- 5.11.0-M2
- 3.13.0
- 3.4.0
-
-
- jakarta.platform
- jakarta.jakartaee-web-api
- 11.0.0
- provided
-
-
- org.glassfish
- jakarta.faces
- 4.1.3
-
-
- jakarta.enterprise
- jakarta.enterprise.cdi-api
- 4.1.0
-
-
- jakarta.enterprise
- jakarta.enterprise.cdi-el-api
- 4.1.0
-
-
- org.jboss.weld.servlet
- weld-servlet-core
- 5.1.2.Final
-
-
- org.junit.jupiter
- junit-jupiter-api
- ${junit.version}
-
-
- org.projectlombok
- lombok
- 1.18.30
-
-
- org.primefaces
- primefaces
- 15.0.3
- jakarta
-
-
-
- demo
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
- ${compiler-plugin.version}
-
-
- org.apache.maven.plugins
- maven-war-plugin
- ${war-plugin.version}
-
-
-
diff --git a/server/pom.xml b/server/pom.xml
new file mode 100755
index 0000000..915da1c
--- /dev/null
+++ b/server/pom.xml
@@ -0,0 +1,33 @@
+
+
+ 4.0.0
+
+ de.componentware
+ componentware-parent
+ 1.0-SNAPSHOT
+ ../pom.xml
+
+ ejb-uebung
+ ejb
+
+
+
+ jakarta.platform
+ jakarta.jakartaee-api
+ 10.0.0
+ provided
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-ejb-plugin
+ 3.2.1
+
+ 4.0
+
+
+
+
+
diff --git a/src/main/java/org/example/demo/uebung1/aufgabe16/Encryptor.java b/server/src/main/java/org/example/demo/uebung1/aufgabe16/Encryptor.java
similarity index 100%
rename from src/main/java/org/example/demo/uebung1/aufgabe16/Encryptor.java
rename to server/src/main/java/org/example/demo/uebung1/aufgabe16/Encryptor.java
diff --git a/src/main/java/org/example/demo/uebung1/aufgabe16/EncryptorRemote.java b/server/src/main/java/org/example/demo/uebung1/aufgabe16/EncryptorRemote.java
similarity index 100%
rename from src/main/java/org/example/demo/uebung1/aufgabe16/EncryptorRemote.java
rename to server/src/main/java/org/example/demo/uebung1/aufgabe16/EncryptorRemote.java
diff --git a/src/main/java/org/example/demo/uebung1/aufgabe17/Counter.java b/server/src/main/java/org/example/demo/uebung1/aufgabe17/Counter.java
similarity index 100%
rename from src/main/java/org/example/demo/uebung1/aufgabe17/Counter.java
rename to server/src/main/java/org/example/demo/uebung1/aufgabe17/Counter.java
diff --git a/src/main/java/org/example/demo/uebung1/aufgabe17/CounterRemote.java b/server/src/main/java/org/example/demo/uebung1/aufgabe17/CounterRemote.java
similarity index 100%
rename from src/main/java/org/example/demo/uebung1/aufgabe17/CounterRemote.java
rename to server/src/main/java/org/example/demo/uebung1/aufgabe17/CounterRemote.java
diff --git a/src/main/resources/META-INF/beans.xml b/server/src/main/resources/META-INF/beans.xml
similarity index 100%
rename from src/main/resources/META-INF/beans.xml
rename to server/src/main/resources/META-INF/beans.xml
diff --git a/src/main/resources/META-INF/persistence.xml b/server/src/main/resources/META-INF/persistence.xml
similarity index 100%
rename from src/main/resources/META-INF/persistence.xml
rename to server/src/main/resources/META-INF/persistence.xml
diff --git a/src/main/webapp/WEB-INF/beans.xml b/server/src/main/webapp/WEB-INF/beans.xml
similarity index 100%
rename from src/main/webapp/WEB-INF/beans.xml
rename to server/src/main/webapp/WEB-INF/beans.xml
diff --git a/src/main/webapp/WEB-INF/faces-config.xml b/server/src/main/webapp/WEB-INF/faces-config.xml
similarity index 100%
rename from src/main/webapp/WEB-INF/faces-config.xml
rename to server/src/main/webapp/WEB-INF/faces-config.xml
diff --git a/src/main/webapp/WEB-INF/web.xml b/server/src/main/webapp/WEB-INF/web.xml
similarity index 100%
rename from src/main/webapp/WEB-INF/web.xml
rename to server/src/main/webapp/WEB-INF/web.xml