kandi background
Explore Kits

open-liberty | Open Liberty | Microservice library

 by   OpenLiberty Java Version: gm-22.0.0.4 License: EPL-1.0

 by   OpenLiberty Java Version: gm-22.0.0.4 License: EPL-1.0

Download this library from

kandi X-RAY | open-liberty Summary

open-liberty is a Java library typically used in Architecture, Microservice applications. open-liberty has no bugs, it has no vulnerabilities, it has a Weak Copyleft License and it has high support. However open-liberty build file is not available. You can download it from GitHub, Maven.
A lightweight open framework for building fast and efficient cloud-native Java microservices:.
Support
Support
Quality
Quality
Security
Security
License
License
Reuse
Reuse

kandi-support Support

  • open-liberty has a highly active ecosystem.
  • It has 939 star(s) with 494 fork(s). There are 36 watchers for this library.
  • There were 6 major release(s) in the last 12 months.
  • There are 1630 open issues and 7076 have been closed. On average issues are closed in 111 days. There are 466 open pull requests and 0 closed requests.
  • It has a positive sentiment in the developer community.
  • The latest version of open-liberty is gm-22.0.0.4
open-liberty Support
Best in #Microservice
Average in #Microservice
open-liberty Support
Best in #Microservice
Average in #Microservice

quality kandi Quality

  • open-liberty has no bugs reported.
open-liberty Quality
Best in #Microservice
Average in #Microservice
open-liberty Quality
Best in #Microservice
Average in #Microservice

securitySecurity

  • open-liberty has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
open-liberty Security
Best in #Microservice
Average in #Microservice
open-liberty Security
Best in #Microservice
Average in #Microservice

license License

  • open-liberty is licensed under the EPL-1.0 License. This license is Weak Copyleft.
  • Weak Copyleft licenses have some restrictions, but you can use them in commercial projects.
open-liberty License
Best in #Microservice
Average in #Microservice
open-liberty License
Best in #Microservice
Average in #Microservice

buildReuse

  • open-liberty releases are available to install and integrate.
  • Deployable package is available in Maven.
  • open-liberty has no build file. You will be need to create the build yourself to build the component from source.
  • Installation instructions, examples and code snippets are available.
open-liberty Reuse
Best in #Microservice
Average in #Microservice
open-liberty Reuse
Best in #Microservice
Average in #Microservice
Top functions reviewed by kandi - BETA

kandi has reviewed open-liberty and discovered the below as its top functions. This is intended to give you an instant insight into open-liberty implemented functionality, and help decide if they suit your requirements.

  • Logs the web context params .
  • Gets a user property by name .
  • Populate the options .
  • Add a method to the stub .
  • Add EJB Method .
  • Sends a message to the exception destination .
  • This method is called when a message is delivered .
  • Load implementation classes .
  • Internal search implementation .
  • Create a connection to the MCWrapper .

open-liberty Key Features

Open Liberty is fast to start up with low memory footprint and live reload for quick iteration.

Simple to add and remove features from the latest versions of MicroProfile and Java EE.

Zero migration lets you focus on what's important, not the APIs changing under you.

Launch a sample app using

copy iconCopydownload iconDownload
git clone https://github.com/OpenLiberty/sample-getting-started.git
cd sample-getting-started
mvn clean package liberty:run

Running a Build

copy iconCopydownload iconDownload
 git clone git@github.com:OpenLiberty/open-liberty.git

Share sessions data between different apps using httpSessionCache and HazelCast in OpenLiberty

copy iconCopydownload iconDownload
<?xml version="1.0" encoding="UTF-8"?>
<application-ext version="1.1" 
    xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-application-ext_1_1.xsd"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xmlns="http://websphere.ibm.com/xml/ns/javaee">
    
    <shared-session-context value="true"/>
</application-ext>

JPA: How to specify tables from different DB2 schemas using @NamedQuery. Schema.Table cannot be the first declaration of the FROM clause

copy iconCopydownload iconDownload
<entity-mappings ... >
     <persistence-unit-metadata>
         <persistence-unit-defaults>
             <schema>Sankofa</schema>
         </persistence-unit-defaults>
     </persistence-unit-metadata>   
     . . .
 </entity-mappings>
<persistence ... >
    <persistence-unit name="foo">
        <mapping-file>orm.xml</mapping-file>
    </persistence-unit>
</persistence>
public class FooSessionCustomizer 
     implements org.eclipse.persistence.config.SessionCustomizer {

     @Override
     public void customize(Session session) throws Exception {
         session.getLogin().setTableQualifier("Sankofa");
     }
 }
<persistence ... >
    <persistence-unit name="foo">
        <properties>
            <property name="eclipselink.session.customizer" value="foo.customizer.FooSessionCustomizer" />
        </properties>
    </persistence-unit>
</persistence>
@Table(name = "Users", schema = "Sankofa")
-----------------------
<entity-mappings ... >
     <persistence-unit-metadata>
         <persistence-unit-defaults>
             <schema>Sankofa</schema>
         </persistence-unit-defaults>
     </persistence-unit-metadata>   
     . . .
 </entity-mappings>
<persistence ... >
    <persistence-unit name="foo">
        <mapping-file>orm.xml</mapping-file>
    </persistence-unit>
</persistence>
public class FooSessionCustomizer 
     implements org.eclipse.persistence.config.SessionCustomizer {

     @Override
     public void customize(Session session) throws Exception {
         session.getLogin().setTableQualifier("Sankofa");
     }
 }
<persistence ... >
    <persistence-unit name="foo">
        <properties>
            <property name="eclipselink.session.customizer" value="foo.customizer.FooSessionCustomizer" />
        </properties>
    </persistence-unit>
</persistence>
@Table(name = "Users", schema = "Sankofa")
-----------------------
<entity-mappings ... >
     <persistence-unit-metadata>
         <persistence-unit-defaults>
             <schema>Sankofa</schema>
         </persistence-unit-defaults>
     </persistence-unit-metadata>   
     . . .
 </entity-mappings>
<persistence ... >
    <persistence-unit name="foo">
        <mapping-file>orm.xml</mapping-file>
    </persistence-unit>
</persistence>
public class FooSessionCustomizer 
     implements org.eclipse.persistence.config.SessionCustomizer {

     @Override
     public void customize(Session session) throws Exception {
         session.getLogin().setTableQualifier("Sankofa");
     }
 }
<persistence ... >
    <persistence-unit name="foo">
        <properties>
            <property name="eclipselink.session.customizer" value="foo.customizer.FooSessionCustomizer" />
        </properties>
    </persistence-unit>
</persistence>
@Table(name = "Users", schema = "Sankofa")
-----------------------
<entity-mappings ... >
     <persistence-unit-metadata>
         <persistence-unit-defaults>
             <schema>Sankofa</schema>
         </persistence-unit-defaults>
     </persistence-unit-metadata>   
     . . .
 </entity-mappings>
<persistence ... >
    <persistence-unit name="foo">
        <mapping-file>orm.xml</mapping-file>
    </persistence-unit>
</persistence>
public class FooSessionCustomizer 
     implements org.eclipse.persistence.config.SessionCustomizer {

     @Override
     public void customize(Session session) throws Exception {
         session.getLogin().setTableQualifier("Sankofa");
     }
 }
<persistence ... >
    <persistence-unit name="foo">
        <properties>
            <property name="eclipselink.session.customizer" value="foo.customizer.FooSessionCustomizer" />
        </properties>
    </persistence-unit>
</persistence>
@Table(name = "Users", schema = "Sankofa")
-----------------------
<entity-mappings ... >
     <persistence-unit-metadata>
         <persistence-unit-defaults>
             <schema>Sankofa</schema>
         </persistence-unit-defaults>
     </persistence-unit-metadata>   
     . . .
 </entity-mappings>
<persistence ... >
    <persistence-unit name="foo">
        <mapping-file>orm.xml</mapping-file>
    </persistence-unit>
</persistence>
public class FooSessionCustomizer 
     implements org.eclipse.persistence.config.SessionCustomizer {

     @Override
     public void customize(Session session) throws Exception {
         session.getLogin().setTableQualifier("Sankofa");
     }
 }
<persistence ... >
    <persistence-unit name="foo">
        <properties>
            <property name="eclipselink.session.customizer" value="foo.customizer.FooSessionCustomizer" />
        </properties>
    </persistence-unit>
</persistence>
@Table(name = "Users", schema = "Sankofa")

liberty:devc: &lt;dockerfile&gt; not being honored

copy iconCopydownload iconDownload
      <plugin>
        <groupId>io.openliberty.tools</groupId>
        <artifactId>liberty-maven-plugin</artifactId>
        <version>3.3.4</version>
        <configuration>
          <dockerfile>/home/edburns/workareas/open-liberty-on-aks/javaee-app-redisson/target/Dockerfile</dockerfile>
          <!-- ... rest of config ... -->
        </configuration>
      </plugin>

Ignore LtpaToken in WebSphere Liberty

copy iconCopydownload iconDownload
<server>
  ...
  <webAppSecurity ssoCookieName="" useOnlyCustomCookieName="true"/>
  ...
</server>

Open Liberty inside Eclipse: publishing results in an JMX connection error

copy iconCopydownload iconDownload
bin/installUtility install localConnector-1.0

OpenLiberty Docker image with *all* features enabled

copy iconCopydownload iconDownload
<server>
  <featureManager>
    <feature>javaee-8.0</feature>
    <feature>microProfile-3.2</feature>
  </featureManager>
</server>

Community Discussions

Trending Discussions on open-liberty
  • OpenLiberty JakartaEE 9: access TransactionManager
  • Share sessions data between different apps using httpSessionCache and HazelCast in OpenLiberty
  • JPA: How to specify tables from different DB2 schemas using @NamedQuery. Schema.Table cannot be the first declaration of the FROM clause
  • liberty:devc: &lt;dockerfile&gt; not being honored
  • Injection of bean inside ClientHeadersFactory doesn't work
  • Ignore LtpaToken in WebSphere Liberty
  • OpenLiberty throws javax.net.ssl.SSLHandshakeException
  • webprofile 6 missing in openliberty but not in websphere liberty
  • Open Liberty inside Eclipse: publishing results in an JMX connection error
  • OpenLiberty Docker image with *all* features enabled
Trending Discussions on open-liberty

QUESTION

OpenLiberty JakartaEE 9: access TransactionManager

Asked 2022-Mar-15 at 15:47

On Docker Image open-liberty:22.0.0.1-full-java17-openj9 with the following activated features:

<featureManager>
  <feature>persistence-3.0</feature>
  <feature>localConnector-1.0</feature>
  <feature>microProfile-5.0</feature>
  <feature>beanValidation-3.0</feature>
</featureManager>

and the javax namespace, it was possible to create an TransactionManager via the api dependency

  compileOnly "com.ibm.websphere.appserver.api:com.ibm.websphere.appserver.api.transaction:1.1.60"

in the following way:

package de.xxx.xxx;

import com.ibm.tx.jta.TransactionManagerFactory;
import javax.enterprise.context.RequestScoped;
import javax.enterprise.inject.Produces;
import javax.transaction.TransactionManager;

@RequestScoped
public class TransactionManagerProducer {

@Produces
 public TransactionManager produce() {
  return TransactionManagerFactory.getTransactionManager();
 }
}

We are moving to JakartaEE9 and this one API dependency seems not to have an equivalent for the jakarta.* namespace, so that this is not compiling:

package de.xxx.xxx;

import com.ibm.tx.jta.TransactionManagerFactory;
import jakarta.enterprise.context.RequestScoped;
import jakarta.enterprise.inject.Produces;
import jakarta.transaction.TransactionManager;

@RequestScoped
public class TransactionManagerProducer {

@Produces
 public TransactionManager produce() {
  return TransactionManagerFactory.getTransactionManager();
 }
}
wlp\dev\api\ibm\com.ibm.websphere.appserver.api.transaction_1.1.60.jar  (javax.*)

is available here:

wlp\dev\api\ibm\io.openliberty.transaction_1.1.60.jar  (jakarta.*)

But I can't seem to find the proper API for the io.openliberty.transaction package. Does anyone know how to access the TransactionManagerFactory? Any help is appreciated.

--- UPDATE: Until the API package is available I chose to create the TransactionManager via reflection:

package de.xxx.xxx;

import jakarta.enterprise.context.RequestScoped;
import jakarta.enterprise.inject.Produces;
import jakarta.transaction.TransactionManager;
import java.lang.reflect.InvocationTargetException;

@RequestScoped
public class TransactionManagerProducer {

@Produces
public TransactionManager produce() {
try {
  return (TransactionManager)
      Class.forName("com.ibm.tx.jta.TransactionManagerFactory")
          .getDeclaredMethod("getTransactionManager")
          .invoke(null);
} catch (ClassNotFoundException
    | NoSuchMethodException
    | InvocationTargetException
    | IllegalAccessException e) {
  throw new IllegalStateException("TransactionManager could not be created");
}

} }

ANSWER

Answered 2022-Feb-14 at 14:26

The problem here is that the API and SPI bundles that start with io.openliberty have not been publishing to DHE and maven as part of the Liberty publishing tasks that run when a new version is released. We are looking to have this resolved with 22.0.0.2 which is scheduled to be available tomorrow if we don't run into any additional snags and the io.openliberty publishing goes well.

Source https://stackoverflow.com/questions/71112630

Community Discussions, Code Snippets contain sources that include Stack Exchange Network

Vulnerabilities

No vulnerabilities reported

Install open-liberty

Clone the repository to your system. Run a gradle build. Run the unit or FAT tests. ./gradlew test for unit tests. ./gradlew build.example_fat:buildandrun to run a FAT project. NOTE: ./gradlew build runs the assemble and test tasks. Perform a local release. NOTE: This task releases all projects to the local releaseRepo. The final openliberty zip can be found in.
Clone the repository to your system. git clone git@github.com:OpenLiberty/open-liberty.git
Run a gradle build. cd open-liberty/dev ./gradlew cnf:initialize ./gradlew assemble
Run the unit or FAT tests. ./gradlew test for unit tests ./gradlew build.example_fat:buildandrun to run a FAT project NOTE: ./gradlew build runs the assemble and test tasks
Perform a local release ./gradlew releaseNeeded NOTE: This task releases all projects to the local releaseRepo. The final openliberty zip can be found in open-liberty\dev\cnf\release\dev\openliberty\<version>\openliberty-xxx.zip

Support

Our CONTRIBUTING document contains details for submitting pull requests. FYI: The project recently renamed master branch to release. More info here: https://github.com/OpenLiberty/open-liberty/wiki/Master-rename-to-Release.

DOWNLOAD this Library from

Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
over 430 million Knowledge Items
Find more libraries
Reuse Solution Kits and Libraries Curated by Popular Use Cases

Save this library and start creating your kit

Explore Related Topics

Share this Page

share link
Consider Popular Microservice Libraries
Compare Microservice Libraries with Highest Support
Compare Microservice Libraries with Highest Security
Compare Microservice Libraries with Permissive License
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from
over 430 million Knowledge Items
Find more libraries
Reuse Solution Kits and Libraries Curated by Popular Use Cases

Save this library and start creating your kit

  • © 2022 Open Weaver Inc.