Giter Site home page Giter Site logo

osgiliathenterprise / net.osgiliath.parent Goto Github PK

View Code? Open in Web Editor NEW
15.0 3.0 7.0 10.06 MB

Osgiliath OSGI-EE Framework

Home Page: http://osgiliathenterprise.github.io/projects.documentations/products/osgiliath-enterprise-framework/

Java 34.19% CoffeeScript 4.15% JavaScript 45.26% CSS 12.00% HTML 4.40%

net.osgiliath.parent's Introduction

#Osgiliath Enterprise framework

Join the chat at https://gitter.im/OsgiliathEnterprise/net.osgiliath.parent

Build Status (sometimes fail due to timeout) Codeship Status Maven Central Js dependencies status

Purpose

Osgiliath EF aims to provides a way to develop Web/backend/enterprise applications in a clean, modular way

Technologies

Osgiliath EF uses many existing first class frameworks, like AngularJS, Twitter Bootstrap, Apache Karaf, Apache Camel, CXF, ActiveMQ, JPA, JTA...

What could I find

Features

You'll find here a bunch of Karaf features allowing you to enable persistence on your project, Web-Servicing, Async messaging, Transactions, Validation, Security, Dependency Injection... Look at their itegration test counter part on how to use it

Archetypes

Osgiliath come with Maven archetypes generating your project skeleton, adding capabilities to it... There are four archetypes:

  • Parent, that describes an entire application
  • Routes, that enable communication between your different web services/parent modules...
  • Business that embeds validation, web services, async ones, transactions, functional programming style...
  • Model that permits you to save your elements in a/some relational databases easily

###Samples There are two way of programming with Osgiliath framework: using blueprint or using CDI. Blueprint configuration has an xml based syntax and is a proven OSGI technology while CDI offers configuration based on annotation (more concise but may be a little bit less featured), so choose your weapons!

Superpom

The entire Osgiliath EF uses these Maven configuration to configure dependency versions, plugin execution... So feel free to use it in your own framework ;).

Where to start?

You can first take a look at the documentation: http://osgiliathenterprise.github.io/net.osgiliath.parent/. Then, you can directly use the archectypes as they're published in Maven central (mvn archetype:generate ...). Or look at the examples or even the features integration tests to see how to code something. Readme.md will describe what's doing a module all along your way through this repo, so don't hesitate to crawl into!

Running on Karaf

Be sure to set JAVA_MAX_MEM and JAVA_MAX_PERM_MEM to higher size (i.e. 1024M) before running an Osgiliath application on Karaf

License

Osgiliath EF is fully Apache 2.0 License so feel free to use, modify, sell... Just don't forget to cite me or at least send me a mail...

Contributor

In order to contribute: Clone the repo, install Java, Maven, Npm, Grunt, Bower, PhantomJS and Compass. Then, add a property mavenSettings.location property pointing to your settings file in this settings file (in an active pofile). Finally run mvn clean install on the root... On Mac, add a java.home property in your Maven settings.xml pointing to your JDK installation (mandatory for lombok). If you use Eclipse, also install the latest Scala IDE in order to compile (http://download.scala-ide.org/sdk/lithium/e44/scala211/dev/site) We'll accept most of contributions in a very short time so don't be shy!

Releasing

In order to release Osgiliath on m2 central, you've got to execute these two command:

    export MAVEN_OPTS="-Xmx2048M -XX:MaxPermSize=1G" (in your .profile)
    mvn release:prepare -Psonatype-oss-release
    mvn release:perform -Dgoals=deploy

Enjoy Osgiliath coding!

net.osgiliath.parent's People

Contributors

gitter-badger avatar gmlewis avatar pierremardon avatar tcharl avatar

Stargazers

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

Watchers

 avatar  avatar  avatar

net.osgiliath.parent's Issues

Issue when compiling net.osgiliath.parent on Windows

HI,

I came across a couple of issues when compiling on Windows.

  1. The fill-parent-path-property profile adds an extra slash to the parent.path property in build.properties. This causes erroneous new line in jacoco path e.g. parent.path = T:\\\workspace\\\Misc\\\net.osgiliath.parent will be interpreted as T:\workspace\Misc\. Even though it's a one-line change I'll create a pull request from my fork in a moment.

  2. Windows version of ProcessBuilder (used in pax exam) doesn't appear to handle working directories with a path longer then 256 characters. e.g. the following is 261 chars and threw an error: "CreateProcess error=267, The directory name is invalid" T:\workspace\Misc\net.osgiliath.parent\net.osgiliath.framework\net.osgiliath.features.karaf-features\net.osgiliath.features.karaf-features.itests\net.osgiliath.features.karaf-features.itests.validation.cdi\target\exam\unpack\36076278-1678-4425-8fe0-918b0bd47a98

    Renaming my "net.osgiliath.parent" folder to "osgiliath" fixed the problem. I can't see a way to remedy this, but perhaps a note in the docs might save someone time in the future.

Best regards.

Rename modules to be more coherent

net.osgiliath.helpers.parent -> net.osgiliath.helpers
net.osgiliath.helpers.* -> net.osgiliath.helper.*
net.osgiliath.features.karaf-features-* -> net.osgiliath.features.karaf-feature.*
net.osgiliath.features.karaf-features.itests.* -> net.osgiliath.features.karaf-features.itest.*

Sometimes, persistence setup fails

Sometimes, persistence tests are failing with this message:
java.lang.Exception: java.sql.SQLException: Commande setAutoCommit(true) non valide au cours de la transaction globale.

Look at the pax-jdbc factiry settings to fix this

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.