Java EE 7 Samples

Overview

Java EE 7 Samples

This workspace consists of Java EE 7 Samples and unit tests. They are categorized in different directories, one for each Technology/JSR.

Some samples/tests have documentation, otherwise read the code. The Java EE 7 Essentials book refers to most of these samples and provides an explanation. Feel free to add docs and send a pull request.

How to run?

Samples are tested on Payara, GlassFish, Wildfly and more using the Arquillian ecosystem.

A brief instruction how to clone, build, import and run the samples on your local machine @radcortez provides in this sample video https://www.youtube.com/watch?v=BB4b-Yz9cF0

Only one container profile can be active at a given time otherwise there will be dependency conflicts.

There are 16 available container profiles, for 6 different servers:

  • Payara and GlassFish

    • payara-ci-managed

      This profile will install a Payara server and start up the server per sample. Useful for CI servers. The Payara version that's used can be set via the payara.version property. This is the default profile and does not have to be specified explicitly.

    • payara-embedded

      This profile uses the Payara embedded server and runs in the same JVM as the TestClass. Useful for development, but has the downside of server startup per sample.

    • payara-remote

      This profile requires you to start up a Payara server outside of the build. Each sample will then reuse this instance to run the tests. Useful for development to avoid the server start up cost per sample.

      This profile supports for some tests to set the location where Payara is installed via the glassfishRemote_gfHome system property. E.g.

      -DglassfishRemote_gfHome=/opt/payara171

      This is used for sending asadmin commands to create container resources, such as users in an identity store.

    • glassfish-embedded

      This profile uses the GlassFish embedded server and runs in the same JVM as the TestClass. Useful for development, but has the downside of server startup per sample.

    • glassfish-remote

      This profile requires you to start up a GlassFish server outside of the build. Each sample will then reuse this instance to run the tests. Useful for development to avoid the server start up cost per sample.

      This profile supports for some tests to set the location where GlassFish is installed via the glassfishRemote_gfHome system property. E.g.

      -DglassfishRemote_gfHome=/opt/glassfish41

      This is used for sending asadmin commands to create container resources, such as users in an identity store.

  • WildFly

    • wildfly-ci-managed

      This profile will install a Wildfly server and start up the server per sample. Useful for CI servers. The WildFly version that's used can be set via the wildfly.version property.

    • wildfly-embedded

      This profile is almost identical to wildfly-ci-managed. It will install the same Wildfly server and start up that server per sample again, but instead uses the Arquillian embedded connector to run it in the same JVM. Useful for CI servers. The WildFly version that's used can be set via the wildfly.version property.

    • wildfly-remote

      This profile requires you to start up a Wildfly server outside of the build. Each sample will then reuse this instance to run the tests. Useful for development to avoid the server start up cost per sample.

    • wildfly-swarm

      This profile uses WildFly Swarm, which allows building uberjars that contain just enough of the WildFly application server. Here, the parts of WildFly that are included are selected based on inspecting the application and looking for the Java EE APIs that are actually used. The WildFly Swarm version that's used can be set via the wildfly.swarm.version property.

  • TomEE

    • tomee-ci-managed

      This profile will install a TomEE server and start up that server per sample. Useful for CI servers. This profile cannot connect to a running server.

      Note that the version of TomEE to be used has to be present in an available maven repository. The defaults in this profile assume that the arquillian adapter and the TomEE server have the same version. E.g both 7.0.0.

      To use a TomEE server that's not available in maven central, one way to use it for the samples is to install it in a local .m2 as follows:

      Clone TomEE repo:

      git clone https://github.com/apache/tomee cd tomee

      Switch to the desired version if needed, then build and install in .m2:

      mvn clean install -pl tomee/apache-tomee -am -Dmaven.test.skip=true

      mvn clean install -pl arquillian -amd -Dmaven.test.skip=true

      Make sure the version that's installed (see pom.xml in TomEE project) matches the tomee.version in the properties section in the root pom.xml of the samples project.

    • tomee-embedded

      This profile uses the TomEE embedded server and runs in the same JVM as the TestClass.

  • Liberty

    • liberty-managed

      This profile will start up the Liberty server per sample, and optionally connects to a running server that you can start up outside of the build (with the restriction that this server has to run on the host as where the tests are run using the same user).

      To connect to a running server the org.jboss.arquillian.container.was.wlp_managed_8_5.allowConnectingToRunningServer system property has to be set to true. E.g.

      -Dorg.jboss.arquillian.container.was.wlp_managed_8_5.allowConnectingToRunningServer=true

      This profile requires you to set the location where Liberty is installed via the libertyManagedArquillian_wlpHome system property. E.g.

      -DlibertyManagedArquillian_wlpHome=/opt/wlp

      This profile also requires the localConnector feature to be configured in server.xml, and if all tests are to be run the javaee-7.0 feature E.g.

      <featureManager>
          <feature>javaee-7.0</feature>
          <feature>localConnector-1.0</feature>
      </featureManager>

      For older versions of Liberty (pre 16.0.0.0) for the JASPIC tests to even be attempted to be executed a cheat is needed that creates a group in Liberty's internal user registry:

      <basicRegistry id="basic">
          <group name="architect"/>
      </basicRegistry>

      This cheat is not needed for the latest versions of Liberty (16.0.0.0/2016.7 and later)

    • liberty-ci-managed

      This profile will download and install a Liberty server and start up the server per sample. Useful for CI servers. Note, this is not a real embedded server, but a regular server. It's now called "embedded" because no separate install is needed as it's downloaded automatically.

  • Weblogic

    • weblogic-remote

      This profile requires you to start up a WebLogic server outside of the build. Each sample will then reuse this instance to run the tests.

      This profile requires you to set the location where WebLogic is installed via the weblogicRemoteArquillian_wlHome system property. E.g.

      -DweblogicRemoteArquillian_wlHome=/opt/wls12210

      The default username/password are assumed to be "admin" and "admin007" respectively. This can be changed using the weblogicRemoteArquillian_adminUserName and weblogicRemoteArquillian_adminPassword system properties. E.g.

      -DweblogicRemoteArquillian_adminUserName=myuser -DweblogicRemoteArquillian_adminPassword=mypassword

  • Tomcat

    • tomcat-remote

      This profile requires you to start up a plain Tomcat (8.5 or 9) server outside of the build. Each sample will then reuse this instance to run the tests.

      Tomcat supports samples that make use of Servlet, JSP, Expression Language (EL), WebSocket and JASPIC.

      This profile requires you to enable JMX in Tomcat. This can be done by adding the following to [tomcat home]/bin/catalina.sh:

      JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.port=8089 -Dcom.sun.management.jmxremote=true "
      JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.ssl=false "
      JAVA_OPTS="$JAVA_OPTS -Dcom.sun.management.jmxremote.authenticate=false"
      JAVA_OPTS="$JAVA_OPTS -Djava.rmi.server.hostname=localhost "
      

      This profile also requires you to set a username (tomcat) and password (manager) for the management application in tomcat-users.xml. See the file test-utils/src/main/resources/tomcat-users.xml in this repository for a full example.

      Be aware that this should only be done for a Tomcat instance that's used exclusively for testing, as the above will make the Tomcat installation totally insecure!

    • tomcat-ci-managed

      This profile will install a Tomcat server and start up the server per sample. Useful for CI servers. The Tomcat version that's used can be set via the tomcat.version property.

The containers that download and install a server (the *-ci-managed profiles) allow you to override the version used, e.g.:

  • -Dpayara.version=4.1.1.163

    This will change the version from the current one (e.g 4.1.1.171.1) to 4.1.1.163 for Payara testing purposes.

  • -Dglassfish.version=4.1

    This will change the version from the current one (e.g 4.1.1) to 4.1 for GlassFish testing purposes.

  • -Dwildfly.version=8.1.0.Final

    This will change the version from the current one (e.g. 10.1.0.Final) to 8.1.0.Final for WildFly.

To run them in the console do:

  1. In the terminal, mvn test -fae at the top-level directory to start the tests for the default profile.

When developing and runing them from IDE, remember to activate the profile before running the test.

To learn more about Arquillian please refer to the Arquillian Guides

To run only a subset of the tests do at the top-level directory:

  1. Install top level dependencies: mvn clean install -pl "test-utils,util" -am
  2. cd into desired module, e.g.: cd jaspic
  3. Run tests against desired server, e.g.: mvn clean test -P liberty-ci-managed

How to contribute

With your help we can improve this set of samples, learn from each other and grow the community full of passionate people who care about the technology, innovation and code quality. Every contribution matters!

There is just a bunch of things you should keep in mind before sending a pull request, so we can easily get all the new things incorporated into the master branch.

Standard tests are jUnit based - for example this commit. Test classes naming must comply with surefire naming standards **/*Test.java, **/*Test*.java or **/*TestCase.java.

For the sake of clarity and consistency, and to minimize the upfront complexity, we prefer standard jUnit tests using Java, with as additional helpers HtmlUnit, Hamcrest and of course Arquillian. Please don't use alternatives for these technologies. If any new dependency has to be introduced into this project it should provide something that's not covered by these existing dependencies.

Some coding principles

  • When creating new source file do not put (or copy) any license header, as we use top-level license (MIT) for each and every file in this repository.
  • Please follow JBoss Community code formatting profile as defined in the jboss/ide-config repository. The details are explained there, as well as configurations for Eclipse, IntelliJ and NetBeans.

Small Git tips

  • Make sure your fork is always up-to-date. Simply run git pull upstream master and you are ready to hack.
  • When developing new features please create a feature branch so that we incorporate your changes smoothly. It's also convenient for you as you could work on few things in parallel ;) In order to create a feature branch and switch to it in one swoop you can use git checkout -b my_new_cool_feature

That's it! Welcome in the community!

CI Job

CI jobs are executed by Travis. Note that by the very nature of the samples provided here it's perfectly normal that not all tests pass. This normally would indicate a bug in the server on which the samples are executed. If you think it's really the test that's faulty, then please submit an issue or provide a PR with a fix.

Run each sample in Docker

  • Install Docker client from http://boot2docker.io

  • Build the sample that you want to run as

    mvn clean package -DskipTests

    For example:

    mvn -f jaxrs/jaxrs-client/pom.xml clean package -DskipTests

  • Change the second line in Dockerfile to specify the location of the generated WAR file

  • Run boot2docker and give the command

    docker build -it -p 80:8080 javaee7-sample

  • In a different shell, find out the IP address of the running container as:

    boot2docker ip

  • Access the sample as http://IP_ADDRESS:80/jaxrs-client/webresources/persons. The exact URL would differ based upon the sample.

Comments
  • Copyright notices and Licensing

    Copyright notices and Licensing

    We have a lot of files with the following header:

    <!-- 
    /*
    * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
    *
    * Copyright (c) 2012 Oracle and/or its affiliates. All rights reserved.
    *
    * The contents of this file are subject to the terms of either the GNU
    * General Public License Version 2 only ("GPL") or the Common Development
    * and Distribution License("CDDL") (collectively, the "License").  You
    * may not use this file except in compliance with the License.  You can
    * obtain a copy of the License at
    * https://glassfish.dev.java.net/public/CDDL+GPL_1_1.html
    * or packager/legal/LICENSE.txt.  See the License for the specific
    * language governing permissions and limitations under the License.
    *
    * When distributing the software, include this License Header Notice in each
    * file and include the License file at packager/legal/LICENSE.txt.
    *
    * GPL Classpath Exception:
    * Oracle designates this particular file as subject to the "Classpath"
    * exception as provided by Oracle in the GPL Version 2 section of the License
    * file that accompanied this code.
    *
    * Modifications:
    * If applicable, add the following below the License Header, with the fields
    * enclosed by brackets [] replaced by your own identifying information:
    * "Portions Copyright [year] [name of copyright owner]"
    *
    * Contributor(s):
    * If you wish your version of this file to be governed by only the CDDL or
    * only the GPL Version 2, indicate your decision by adding "[Contributor]
    * elects to include this software in this distribution under the [CDDL or GPL
    * Version 2] license."  If you don't indicate a single choice of license, a
    * recipient has the option to distribute your version of this file under
    * either the CDDL, the GPL Version 2 or to extend the choice of license to
    * its licensees as provided above.  However, if you add GPL Version 2 code
    * and therefore, elected the GPL Version 2 license, then the option applies
    * only if the new code is made subject to such option by the copyright
    * holder.
    */
    -->
    

    Should we start to remove it as we go along? The top-level LICENSE file already states:

    "Except where otherwise indicated, everything in this repository is licensed under the MIT license"

    And we also have Oracle references in the header. Any thoughts about this @arun-gupta, @aslakknutsen ?

    opened by radcortez 26
  • Add

    Add "jaspitest" security domain to standalone.xml of WildFly instances

    All JASPIC tests now fail because of a missing security domain. This security domain is a bit of an unfortunate thing (it actually shouldn't be needed, but for the moment it is)

    The required XML to be added in the "security-domains" tag is:

    <security-domain name="jaspitest" cache-type="default">
        <authentication-jaspi>
            <login-module-stack name="dummy">
                <login-module code="Dummy" flag="optional"/>
            </login-module-stack>
            <auth-module code="Dummy"/>
        </authentication-jaspi>
    </security-domain>
    
    opened by arjantijms 23
  • How-To replace RestEasy with Jersey in WildFly

    How-To replace RestEasy with Jersey in WildFly

    Similar to #92 a How-To that explains replacing RestEasy with Jersey in WildFly would be useful. I wonder what implications this would have on any RestEasy usage that might be part of the WildFly administration console. I think it's nearly impossible to switch JAX-RS impls. in Glassfish for this reason, but I could be mistaken. If its not possible to replace at the AS level then a sample showing its usage in a WAR and EAR would be useful.

    new sample wildfly 
    opened by noahwhite 23
  • Add a TomEE 2.0 build profile

    Add a TomEE 2.0 build profile

    Let's add a TomEE 2.0 build profile, so that we can start testing out the new version of TomEE in web profile.

    Note that we'll need to use TomEE plus for now. I think at some point we need to add support for different profiles, and perhaps different test suites per container based on what should work.

    opened by johnament 22
  • Remove Groovy support?

    Remove Groovy support?

    This project has added a quite a bit of complexity in order to support Groovy for test files.

    I wonder, is this really worth it? Maybe I'm missing something, but I see only 3 .groovy files being used in the entire project.

    Besides the complexity vs usage, is it really a good idea to have tests in totally different formats? I would argue it's better for consistency to have all tests in the same format using the same testing system and same language.

    opened by arjantijms 21
  • New contribution to batch tests

    New contribution to batch tests

    Refactored common methods used by batch tests to project batch-test. Added new project to be imported as a test dependency. At the moment, we have a method to keep the test alive while the job is executing and another to convert the Metrics array to a more user friendly structure to retrieve values.

    Added new test for chuck-simple project.

    opened by radcortez 14
  • AccountSessionStatelessnessTest broken

    AccountSessionStatelessnessTest broken

    AccountSessionStatelessnessTest.should_deposit_amount_on_first_account() and AccountSessionStatelessnessTest.should_contain_already_deposited_amount_on_second_account() are broken are least for a pretty long time (search https://arungupta.ci.cloudbees.com/job/Java%20EE%207%20Samples%20on%20WildFly-cb/153/consoleFull for one of these test methods)

    I am also curious about the test scenario here. Actually a sateless bean is tested via stateful behaviour.

    opened by MichaelF25 13
  • Missing artifact

    Missing artifact "test-utils" (run test for CDI)

    In https://nexus.codehaus.org/#view-repositories;snapshots~browsestorage~test there is no this artifact and maven can not run test for CDI - how can I fix it?

    Thanks.

    opened by olukashevich 11
  • Transaction-aware ReceptionSynchronizer

    Transaction-aware ReceptionSynchronizer

    Proof of concept for a synchronizer, that will notify the test after transaction is coompleted. In real life this guarantees, that test can verify the side effects performed by MDB.

    opened by pdudits 10
  • Fix some failures using wildfly-swarm profile

    Fix some failures using wildfly-swarm profile

    -->by upgrading upgrading arquillian and wildfly swarm version. Additionally, cut the dependency from test-utils to parent to avoid unwanted added dependencies

    Here we go @arjantijms !

    Thanks a lot!

    opened by juangon 9
  • Fix some failures using wildfly-swarm profile

    Fix some failures using wildfly-swarm profile

    Hi @arjantijms. Here comes more fixes for Wildfly Swarm that improves our coverage.

    1-Upgrade arquillian and wildfly swarm version. In latest version there are two issues fixed that affects wildfly swarm: https://issues.jboss.org/browse/ARQ-2107 and https://issues.jboss.org/browse/ARQ-2109.

    2- Exclude payara container to avoid duplicated arquillian container error. This error is reproducible since some of the latest commits changing the payara container. Weirdly, this dependency comes in when using test-utils.

    Thanks!

    opened by juangon 9
  • Bump jsoup from 1.14.2 to 1.15.3 in /jaspic/common

    Bump jsoup from 1.14.2 to 1.15.3 in /jaspic/common

    Bumps jsoup from 1.14.2 to 1.15.3.

    Release notes

    Sourced from jsoup's releases.

    jsoup 1.15.3

    jsoup 1.15.3 is out now, and includes a security fix for potential XSS attacks, along with other bug fixes and improvements, including more descriptive validation error messages.

    Details:

    jsoup 1.15.2 is out now with a bunch of improvements and bug fixes.

    jsoup 1.15.1 is out now with a bunch of improvements and bug fixes.

    jsoup 1.14.3

    jsoup 1.14.3 is out now, adding native XPath selector support, improved \<template> support, and also includes a bunch of bug fixes, improvements, and performance enhancements.

    See the release announcement for the full changelog.

    Changelog

    Sourced from jsoup's changelog.

    jsoup changelog

    Release 1.15.3 [2022-Aug-24]

    • Security: fixed an issue where the jsoup cleaner may incorrectly sanitize crafted XSS attempts if SafeList.preserveRelativeLinks is enabled. https://github.com/jhy/jsoup/security/advisories/GHSA-gp7f-rwcx-9369

    • Improvement: the Cleaner will preserve the source position of cleaned elements, if source tracking is enabled in the original parse.

    • Improvement: the error messages output from Validate are more descriptive. Exceptions are now ValidationExceptions (extending IllegalArgumentException). Stack traces do not include the Validate class, to make it simpler to see where the exception originated. Common validation errors including malformed URLs and empty selector results have more explicit error messages.

    • Bugfix: the DataUtil would incorrectly read from InputStreams that emitted reads less than the requested size. This lead to incorrect results when parsing from chunked server responses, for e.g. jhy/jsoup#1807

    • Build Improvement: added implementation version and related fields to the jar manifest. jhy/jsoup#1809

    *** Release 1.15.2 [2022-Jul-04]

    • Improvement: added the ability to track the position (line, column, index) in the original input source from where a given node was parsed. Accessible via Node.sourceRange() and Element.endSourceRange(). jhy/jsoup#1790

    • Improvement: added Element.firstElementChild(), Element.lastElementChild(), Node.firstChild(), Node.lastChild(), as convenient accessors to those child nodes and elements.

    • Improvement: added Element.expectFirst(cssQuery), which is just like Element.selectFirst(), but instead of returning a null if there is no match, will throw an IllegalArgumentException. This is useful if you want to simply abort processing if an expected match is not found.

    • Improvement: when pretty-printing HTML, doctypes are emitted on a newline if there is a preceding comment. jhy/jsoup#1664

    • Improvement: when pretty-printing, trim the leading and trailing spaces of textnodes in block tags when possible, so that they are indented correctly. jhy/jsoup#1798

    • Improvement: in Element#selectXpath(), disable namespace awareness. This makes it possible to always select elements by their simple local name, regardless of whether an xmlns attribute was set. jhy/jsoup#1801

    • Bugfix: when using the readToByteBuffer method, such as in Connection.Response.body(), if the document has not already been parsed and must be read fully, and there is any maximum buffer size being applied, only the default internal buffer size is read. jhy/jsoup#1774

    ... (truncated)

    Commits
    • c596417 [maven-release-plugin] prepare release jsoup-1.15.3
    • d2d9ac3 Changelog for URL cleaner improvement
    • 4ea768d Strip control characters from URLs when resolving absolute URLs
    • 985f1fe Include help link for malformed URLs
    • 6b67d05 Improved Validate error messages
    • 653da57 Normalized API doc link
    • 5ed84f6 Simplified the Test Server startup
    • c58112a Set the read size correctly when capped
    • fa13c80 Added jar manifest default implementation entries.
    • 5b19390 Bump maven-resources-plugin from 3.2.0 to 3.3.0 (#1814)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump resteasy-client from 3.0.19.Final to 3.14.0.Final

    Bump resteasy-client from 3.0.19.Final to 3.14.0.Final

    Bumps resteasy-client from 3.0.19.Final to 3.14.0.Final.

    Release notes

    Sourced from resteasy-client's releases.

    v3.9.2.Final

    In this release:

    springboot.ver = 2.5.7 resteasy.ver = 3.15.3.Final

    Commits
    • 460ce3e [RESTEASY-2786] 3.14.0-SNAPSHOT->3.14.0.Final
    • 1918547 [RESTEASY-2772] Backing out changes for RESTEASY-2772. (#2627)
    • 2e6bcbe [RESTEASY-2641] ported nonProxyHost code from master (#2624)
    • 685132a [RESTEASY-1865] ported proposed code changes to branch (#2625)
    • 771f2c6 [RESTEASY-2728] Clients running in a resource method throw safer WebApplicati...
    • 3b2dc7e Fix wfly21 exclusions
    • 7f297ab [RESTEASY-2707] added security block
    • 8a394e4 [RESTEASY-2765] Fix validation of empty array
    • 4c656d1 Update target containers to test against WFLY 21.0.1.Final
    • 1f773f3 [RESTEASY-2772] changed exception type and adjusted unit tests
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump h2 from 1.4.197 to 2.1.210

    Bump h2 from 1.4.197 to 2.1.210

    Bumps h2 from 1.4.197 to 2.1.210.

    Release notes

    Sourced from h2's releases.

    Version 2.1.210

    Two security vulnerabilities in H2 Console (CVE-2022-23221 and possible DNS rebinding attack) are fixed.

    Persistent databases created by H2 2.0.x don't need to be upgraded. Persistent databases created by H2 1.4.200 and older versions require export into SQL script with that old version and creation of a new database with the new version and execution of this script in it.

    ... (truncated)

    Commits
    • ca926f8 Merge remote-tracking branch 'h2database/master'
    • be306de Version advancement
    • 030eb72 Improve migration documentation
    • 86d58c4 Merge pull request #3381 from katzyn/legacy
    • b613598 Typo
    • d6e4eb8 Add IDENTITY() and SCOPE_IDENTITY() to LEGACY mode
    • 36e790d make javadoc happier
    • 1c0ca27 Add "of this server" to adminWebExternalNames text
    • 0f83f48 Convert host names to lower case
    • c5f11a5 Merge pull request #3378 from katzyn/lob
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump h2 from 1.3.173 to 2.1.210 in /jpa/datasourcedefinition

    Bump h2 from 1.3.173 to 2.1.210 in /jpa/datasourcedefinition

    Bumps h2 from 1.3.173 to 2.1.210.

    Release notes

    Sourced from h2's releases.

    Version 2.1.210

    Two security vulnerabilities in H2 Console (CVE-2022-23221 and possible DNS rebinding attack) are fixed.

    Persistent databases created by H2 2.0.x don't need to be upgraded. Persistent databases created by H2 1.4.200 and older versions require export into SQL script with that old version and creation of a new database with the new version and execution of this script in it.

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump h2 from 1.3.173 to 2.1.210 in /jpa/datasourcedefinition-applicationxml-pu

    Bump h2 from 1.3.173 to 2.1.210 in /jpa/datasourcedefinition-applicationxml-pu

    Bumps h2 from 1.3.173 to 2.1.210.

    Release notes

    Sourced from h2's releases.

    Version 2.1.210

    Two security vulnerabilities in H2 Console (CVE-2022-23221 and possible DNS rebinding attack) are fixed.

    Persistent databases created by H2 2.0.x don't need to be upgraded. Persistent databases created by H2 1.4.200 and older versions require export into SQL script with that old version and creation of a new database with the new version and execution of this script in it.

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
  • Bump h2 from 1.3.173 to 2.1.210 in /jpa/datasourcedefinition-webxml-pu

    Bump h2 from 1.3.173 to 2.1.210 in /jpa/datasourcedefinition-webxml-pu

    Bumps h2 from 1.3.173 to 2.1.210.

    Release notes

    Sourced from h2's releases.

    Version 2.1.210

    Two security vulnerabilities in H2 Console (CVE-2022-23221 and possible DNS rebinding attack) are fixed.

    Persistent databases created by H2 2.0.x don't need to be upgraded. Persistent databases created by H2 1.4.200 and older versions require export into SQL script with that old version and creation of a new database with the new version and execution of this script in it.

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    • @dependabot use these labels will set the current labels as the default for future PRs for this repo and language
    • @dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
    • @dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
    • @dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language

    You can disable automated security fix PRs for this repo from the Security Alerts page.

    dependencies 
    opened by dependabot[bot] 0
Design patterns implemented in Java

Design patterns implemented in Java Read in different language : CN, KR, FR, TR, AR Introduction Design patterns are the best formalized practices a p

Ilkka Seppälä 79k Jan 2, 2023
Solutions for some common algorithm problems written in Java.

Algorithms This repository contains my solution for common algorithms. I've created this repository to learn about algorithms and improve solutions to

Pedro Vicente Gómez Sánchez 2.8k Dec 30, 2022
Algorithms and Data Structures implemented in Java

Java : Algorithms and Data Structure The algorithms and data structures are implemented in Java. This is a collection of algorithms and data structure

Justin Wetherell 4.2k Jan 5, 2023
MCQs and coding questions solutions of Object-Oriented Programming java of coding ninjas

cn-java-sols (⌐■_■) Link to This repository Other similar repository of my friend Link ?? enjoy having full marks ?? ?? now answers avaible up to Stri

Sanyam Mahajan 11 Dec 27, 2022
Rework of html-java-dsl to work with newer Javas

java-html-dsl Example DSL for writing html in Java. Rework of benjiman/java-html-dsl to work with newer versions of Java This String doc = html(

Benji Weber 19 Jan 25, 2022
A toolchain for Minecraft: Java Edition that builds a workspace to interact with the game using the official mappings provided to the public by Mojang Studios.

VanillaGradle is a toolchain for Minecraft: Java Edition that provides a workspace to interact with the game using official mappings provided by Mojan

SpongePowered 75 Nov 22, 2022
Amazing Ruby's "Enumerable" ported to Java

Overview How to use? .all .any .none .select .map .count .reject .find How to contribute? Contributors Overview enumerable4j is a Ruby's well known En

Yurii Dubinka 30 Oct 28, 2022
Java 16 Features

Java 16 Features. Features are separated by package name.

Rahman Usta 9 Jan 7, 2022
Java Kampında derslerde yazılan projeler

nLayeredDemo JavaCampDay5Lesson https://www.youtube.com/watch?v=yaBPeS65vwM&ab_channel=EnginDemiro%C4%9F linkteki derste yapılan proje. Nortwind JavaC

Zeyneb Eda YILMAZ 10 Dec 14, 2021
Engin DEMIROG yotube java kamp HW

JavaBootCamp https://www.kodlama.io/courses/enrolled/1332369 Engin DEMIROG yotube javaBootCamp HW ve projeler Java & React Bootcamp (https://kodlama.i

Melik KARACA 8 Nov 13, 2022
Software Developer Training Camp (JAVA + REACT) works under the guidance of Engin Demiroğ

https://kodlama.io/p/yazilim-gelistirici-yetistirme-kampi2 [EN] Java_React-BootCamp Software Developer Training Camp (JAVA + REACT) works under the gu

Saba ÜRGÜP 18 Dec 24, 2022
A Java game Solitaire, made with JavaFX

Java Solitaire A game made with JavaFX Installation requirements: At least Java 11 installed. setup: 2.1. Intellij -> Open the file in the IDE and exe

Walter Alleyz 15 May 6, 2021
Bitcoin SV Library for Java

Introduction Overview Bitcoin4J is a Bitcoin library for the Java Language licensed under the Apache License 2.0. This library has been built in line

null 17 May 25, 2022
Repository for Bryn and Ethan's Java with MicroServices Batch

210607-FeederProgram This repository houses examples and environment setup for the Revature feeder program beginning on 6/7/2021 Environment Setup Gui

Bryn Portella 17 May 22, 2022
http://kodlama.io "Java & React Bootcamp" up to date Lectures and Homeworks.

Java & React Bootcamp (https://kodlama.io/) Lectures Lecture 1 intro Lecture 2 oopIntro homework Lecture 3 oopIntro2 inheritance inheritance2 homework

Karcan Ozbal 237 Dec 29, 2022
Códigos do Bootcamp Java Básico DIO

Curso Java Básico Digital Innovation One https://digitalinnovation.one Tive a honra de fazer parceria com o pessoal da Digital Innovation One, com doi

Nicole Bidigaray 3 Jul 28, 2021
Slicer4J is an accurate, low-overhead dynamic slicer for Java programs.

Slicer4J This repository hosts Slicer4J, an accurate, low-overhead dynamic slicer for Java programs. Slicer4J automatically generates a backward dynam

The Reliable, Secure, and Sustainable Software Lab 25 Dec 19, 2022
Ejercicios de CodeSignal resueltos en Java

CodeSignal Ejercicios resueltos en Java de la plataforma CodeSignal. Crear el proyecto con Maven Abrimos un terminal y ejecutamos el siguiente comando

Desarrollo de Interfaces (DAD) 3 Sep 21, 2021
Java Coding Practice

Java Coding Practice I have solved many problems in this, Some of them are Median of Two Sorted Arrays Merge k Sorted Lists First Missing Positive Val

null 10 Nov 12, 2021