{"id":13640978,"url":"https://github.com/Angular2Guy/Angular2AndJavaEE","last_synced_at":"2025-04-20T07:31:31.594Z","repository":{"id":14036164,"uuid":"74204252","full_name":"Angular2Guy/Angular2AndJavaEE","owner":"Angular2Guy","description":"This project should provide a starting point for people interested in using Angular 18 in a Java / Jakarta EE environment.","archived":false,"fork":false,"pushed_at":"2024-10-10T21:19:51.000Z","size":29205,"stargazers_count":96,"open_issues_count":1,"forks_count":32,"subscribers_count":25,"default_branch":"master","last_synced_at":"2024-10-21T01:05:48.717Z","etag":null,"topics":["angular","angular-cli","angular18","jakarta-ee","java","java-17","javaee","jboss","jpa","maven","swagger","typescript","wildfly"],"latest_commit_sha":null,"homepage":"https://angular2guy.wordpress.com/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Angular2Guy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2016-11-19T11:25:06.000Z","updated_at":"2024-10-03T06:03:43.000Z","dependencies_parsed_at":"2023-01-13T20:30:12.495Z","dependency_job_id":"567b4407-8219-4e7e-a2b3-fa72516a7200","html_url":"https://github.com/Angular2Guy/Angular2AndJavaEE","commit_stats":{"total_commits":333,"total_committers":8,"mean_commits":41.625,"dds":0.5075075075075075,"last_synced_commit":"7b374c5fd43f7a2ed8277e1fbacaf761ba619f8f"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Angular2Guy%2FAngular2AndJavaEE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Angular2Guy%2FAngular2AndJavaEE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Angular2Guy%2FAngular2AndJavaEE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Angular2Guy%2FAngular2AndJavaEE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Angular2Guy","download_url":"https://codeload.github.com/Angular2Guy/Angular2AndJavaEE/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":223821978,"owners_count":17208775,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["angular","angular-cli","angular18","jakarta-ee","java","java-17","javaee","jboss","jpa","maven","swagger","typescript","wildfly"],"created_at":"2024-08-02T01:01:16.424Z","updated_at":"2024-11-09T11:30:33.451Z","avatar_url":"https://github.com/Angular2Guy.png","language":"Java","readme":"Carrental: Example Using Angular with Angular Cli and Java/Jakarta EE 8 Deployed as an EAR\n==============================================================================================\nAuthor: Sven Loesekann\n\n![Build Status](https://travis-ci.org/Angular2Guy/Angular2AndJavaEE.svg?branch=master)\n[![CodeQL](https://github.com/Angular2Guy/Angular2AndJavaEE/actions/workflows/codeql-analysis.yml/badge.svg)](https://github.com/Angular2Guy/Angular2AndJavaEE/actions/workflows/codeql-analysis.yml)\n\n\nTechnologies: EAR, Rest, Angular, Angular Cli\n\nSummary: Example Project for the integration of Maven, Angular, Java/Jakarta EE 8\n\nTarget Project: Java/Jakarta EE 8\n\n## Articles\n* [The Recipe for Angular 2 in a Java EE Environment](https://dzone.com/articles/recipe-for-angular-2-in-a-java-ee-environment)\n* [The Recipe for Angular 2 in a Java EE Environment: Rest Service](https://dzone.com/articles/the-recipe-for-angular-2-in-a-java-ee-environment)\n* [The Recipe for Angular 2 in a Java EE Environment: Frontend 1](https://dzone.com/articles/the-recipe-for-angular-2-in-a-java-ee-environment-1)\n* [The Recipe for Angular 2 in a Java EE Environment: Frontend 2](https://dzone.com/articles/the-recipe-for-angular-2-in-a-java-ee-environment-2)\n* [The Recipe for Angular 2 in a Java EE Environment: Maven Build](https://dzone.com/articles/the-recipe-for-angular-2-in-a-java-ee-environment-3)\n* [The Recipe for Angular in a Java EE Environment: Aot Build](https://dzone.com/articles/the-recipe-for-angular-in-a-java-ee-environment-ao)\n* [The Recipe for Angular in a Java EE Environment: Two Improvements](https://dzone.com/articles/the-recipe-for-angular-in-a-java-ee-environment-2)\n* [Angular Interceptor for a BaseHref Path in Services](https://angular2guy.wordpress.com/2021/07/31/angular-interceptor-for-a-basehref-path-in-services/)\n\nUpdate\n-----------\nThe project has been updated to **Jakarta EE 8** and **Java 17 minimum** on **Wildfly 26**. \n\nWhat is it?\n-----------\n\nThe project shows the integration of Angular with Angular Cli as UI. The Rest services are provided by Jakarta EE 8, in this example is with WildFly. The build is done in Maven. \n\nWildfly is integrated with the JBoss Plugin to provide re-deployments. Angular Cli provides the UI, redeploys the UI on change and optimizes production build.\n\nThe Ear that is build can be tested in a Docker Image that Maven builds.\n\nDevelopment Requirements\n-------------------\n\nJava 17 JDK or newer. \n\nEclipse JEE.\n\nWildFly 26 or newer. (Any JavaEE 8 Appserver should do)\n\nJBoss Plugin JBoss AS, WildFly \u0026 EAP Server Tools.\n\nInstall Eclipse Plugin Eclipse Wild Web Developer of the Eclipse Marketplace.\n\nMaven 3.5.4 or newer. \n\nNodejs 18.19.x or newer \n\nNpm 10.2.x or newer\n\nAngular Cli 18 or newer. \n\nBuild Server Requirements\n-------------------------\nJava 17 JDK or newer. \n\nMaven 3.8.x or newer. \n\nNodejs 18.19.x \n\nNpm 10.2.x \n\nSetup\n-----\nJDK 17, Wildfly 23(or an other Jakarta EE8 server), Nodejs, Eclipse, Maven must be installed.\n\nInstall Angular Cli \"npm install -g angular-cli@latest\".\n\nInstall Eclipse JBoss Plugin \"http://download.jboss.org/jbosstools/oxygen/stable/updates/\"\n\nAdd the server runtime environment for Wildfly and connect it to the WildFly installation.\n\nInstall Eclipse Plugin Eclipse Wild Web Developer of the Eclipse Marketplace.\n\nDevelopment Setup\n-----------------\nCheck out the carrental project. \n\nOpen a shell and cd into the directory carrental-web/src/main/angular2/carrental\n\nExecute npm install for dependency resolution.\n\nExecute npm start to start the UI.\n\nStart Wildfly in Eclipse.\n\nBuild Setup\n-----------\nThe project is a multi-module project. \nThe ear project configures the Ear.\nThe ejb project builds the ejbs to provide the data for the rest service.\nThe war project builds the war. Jax-Rs provides the rest services to serve the data of the ejbs. Npm install provides the dependency resolution for Angular Cli. Angular Cli builds a tree shaken, uglified bundle. Angular Cli runs the tests with Karma on Chrome and breaks the build if they fail.\nThe ear is built.\n\nProject Goals\n------------\nTo provide a maven project that can be build on continous build server and provide an optimized ui bundle. \nTo provide a development setup that provides fast feedback on the java ee server and on the UI. \nThe fast feedback on the rest service is provided by the wildfly integration in eclipse.\nThe fast feedback on the ui is provided by the angular cli integration. Angular Cli is used to provide the ui with fast feedback on change. Angular Cli can generate components, pipes and more. It builds Typescript into Javascript. It provides test wrappers and can execute them. \n\nWith such a setup Angular can be used on Java EE environment.\n\nTesting the Ear\n---------------\nTo provide a method to test the Ear of the Build a Docker Image can be build. The image uses Wildfly and deploys the Ear in the server. The server can then be started and the optimized build can be tested. That enables testing the Ear without changing the setup of the development environment. Docker Images of other Application Servers are available at [Docker Hub](https://hub.docker.com/u/angular2guy/) and provide the opportunity to test the Ear on different platforms. \n\nBuild the Docker Image\n----------------\nFor building the Docker Image the Docker needs to be installed and started. To build the Docker image the lines in buildDocker.sh can be used. First the ear needs to be build with 'mvnw' **Jdk 17 required** due to the wildfly base image. Then the docker command creates the image with the ear and the Docker image can be run locally.\n","funding_links":[],"categories":["Repositories 📦"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAngular2Guy%2FAngular2AndJavaEE","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FAngular2Guy%2FAngular2AndJavaEE","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FAngular2Guy%2FAngular2AndJavaEE/lists"}