Code Monkey home page Code Monkey logo

ironjacamar's Introduction

IronJacamar

IronJacamar implements the Jakarta Connectors 2.1 specification.

IronJacamar is licensed under GNU LESSER GENERAL PUBLIC LICENSE 2.1 (LGPL 2.1)

http://www.ironjacamar.org/

Jakarta Connectors

The Jakarta Connectors defines a standard architecture for connecting the Jakarta EE platform to heterogeneous Enterprise Information Systems (EIS). Examples of EISs include Enterprise Resource Planning (ERP), mainframe transaction processing (TP), databases and messaging systems.

The connector architecture defines a set of scalable, secure, and transactional mechanisms that enable the integration of EISs with application servers and enterprise applications.

The connector architecture also defines a Common Client Interface (CCI) for EIS access. The CCI defines a client API for interacting with heterogeneous EISs.

The connector architecture enables an EIS vendor to provide a standard resource adapter for its EIS. A resource adapter is a system-level software driver that is used by a Java application to connect to an EIS. The resource adapter plugs into an application server and provides connectivity between the EIS, the application server, and the enterprise application. The resource adapter serves as a protocol adapter that allows any arbitrary EIS communication protocol to be used for connectivity. An application server vendor extends its system once to support the connector architecture and is then assured of seamless connectivity to multiple EISs. Likewise, an EIS vendor provides one standard resource adapter which has the capability to plug in to any application server that supports the connector architecture.

Jakarta Connectors 2.1 Specification

Build with Maven

The command below builds the project and runs the embedded suite.

$ mvn clean install

Issue Tracking

Bugs and features are tracked within the IronJacamar Jira project at https://issues.jboss.org/browse/JBJCA

Contributions

All new features and enhancements should be submitted to main branch. Our contribution guide will guide you through the steps for getting started on the IronJacamar project and will go through how to format and submit your first PR.

Get Help

If you would like to ask us some question or you need some help, feel free to ask on the WildFly user forum.

ironjacamar's People

Contributors

baranowb avatar barreiro avatar boris-unckel avatar bstansberry avatar chengfang avatar clara0 avatar dependabot[bot] avatar ehsavoie avatar fl4via avatar gaol avatar gerdogdu avatar istudens avatar iweiss avatar jbliznak avatar jeffzhang avatar jesperpedersen avatar johnaohara avatar johnathonlee avatar marschall avatar msfm avatar pferraro avatar rarguello avatar scottmarlow avatar simkam avatar spyrkob avatar tadamski avatar tcollignon avatar tomashofman avatar whitingjr avatar yongyang avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ironjacamar's Issues

Tracer

Port the IronJacamar tracer, plus HTML report generator

Porting validator module

TODOs are

  • Separate configurations for the Ant, Maven and Gradle artifacts
  • Standalone validator scripts
  • Migrating the test suite to testsuite/

Source of ironjacamar-deployers-fungal

Hello

I search the source code of ironjacamar-deployers-fungal jar, do you know where it is ?
(particularly org.jboss.jca.deployers.fungal.RADeployer)

Thanks in advance

Logging

Port logging codes and messages from IJ 1.x
Review common, core and deployers module adding all logs needed for debugging.
i18n is required for log level < DEBUG
Take care also of trace message using our Tracer API #487

Recovery

Both for outbound and inbound

Developer Guide

Port form 1.2 and update user guide in new documentation environment (#528)
(PDF, HTML, web)

JDBC resource adapter

Porting from 1.2 paying attention to:

  1. Cleanups in regards to security integration
  2. "Encrypted" connection properties

User guide

Port form 1.2 and update user guide in new documentation environment (#528)
(PDF, HTML, web)

DWM test cases

We need test cases for DWM using embedded multiple instances.

Evaluate also tests for crashing instances

Initial metadata

Port the metadata from IronJacamar 1.2, remove enum usage, and hide XML node information

New pool architecture

The new pool architecture should allow different strategies to be used on a per deployment basis

Different methods to get underlying ps in WrappedPreparedStatement

In org.jboss.jca.adapters.jdbc.WrappedPreparedStatement the different delegated methods all use lock/unlock and checkState but some of them use the ps field directly, others use getUnderlyingPreraedStatement (which does lock+check itself). Is this intentional or should all use ps. directly?

It looks like at the beginning of the flle ps. was used (setBoolean, setByte, ..., setArray, getParameterMetaDate), and since getPoolable/setPoolable used the underyling one the following methds used it by accident:

https://github.com/ironjacamar/ironjacamar/blob/1.2/adapters/src/main/java/org/jboss/jca/adapters/jdbc/WrappedPreparedStatement.java

If it is intentional, I would suspect it should be used in the old methods as well (and we can skip the checkState() call then.

RarInfo

Porting all things from 1.2 branch.
Create a specific module for rarinfo and add it to distribution
update also user documentation if needed

Travis CI

Enable Travis CI integration on GitHub for master, so every pull request will be automatically tested . Of course, this adds to the existing Jenkins jobs that are still run daily against current master on cloudbees.

Janitor

Add a janitor concept to the pool.

Functionality:

  • dumpQueuedThreads
  • getConnectionListeners
  • killConnectionListener

Spec API javadoc

Include them in distribution's documentation.
Consider also to include IJ specific public API javadoc

XSD for dataSources has invalid type for share-prepared-statements?

My whatever-ds.xml has:

<?xml version="1.0" encoding="UTF-8"?>

<datasources xmlns="http://www.ironjacamar.org/doc/schema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.ironjacamar.org/doc/schema http://www.ironjacamar.org/doc/schema/datasources_1_3.xsd">

   <datasource jndi-name="whatever-ds" pool-name="ExampleDS">
        <connection-url>
            jdbc:h2:target/h2-test;MODE=MySQL
        </connection-url>
        <driver>h2</driver>
        <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
        <pool>
            <min-pool-size>2</min-pool-size>
            <max-pool-size>5</max-pool-size>
            <prefill>true</prefill>
        </pool>

        <security>
            <user-name>sa</user-name>
            <password>sa</password>
        </security>

        <statement>
            <prepared-statement-cache-size>32</prepared-statement-cache-size>
            <share-prepared-statements>true</share-prepared-statements>
        </statement>
    </datasource>
</dataSources>

So, <share-prepared-statements>true</share-prepared-statements> generates an error, even though I think this is valid. I only took a quick glance, but I couldn't figure out why the XSD didn't allow this.

CachedConnectionManager

Add a CachedConnectionManager that support merging of ConnectionListener upon transaction start

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.