Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
CapeDwarf Blue
Java JavaScript Other
Failed to load latest commit information.
admin Remove #.
appidentity Move Shared to sub Integration module.
arquillian Update deps and bump version to 2.0.0-SNAPSHOT
aspects Update deps and bump version to 2.0.0-SNAPSHOT
blobstore Remove F8 code.
bytecode Adjust Cursor transformer.
capabilities Update deps and bump version to 2.0.0-SNAPSHOT
channel Move cache name enum.
cluster-tests Upgrade M/R.
cluster Make key gen tx isolated, but still atomic.
common Add non-bundled GAE http test.
cron Move Shared to sub Integration module.
datastore Upgrade to 25 XG entity groups.
endpoints Update deps and bump version to 2.0.0-SNAPSHOT
environment Add clustered tx tracking.
files Fix uploaded filename handling with GCS.
gql4j Update deps and bump version to 2.0.0-SNAPSHOT
images Move cache name enum.
log No warmup by default.
mail Update deps and bump version to 2.0.0-SNAPSHOT
memcache Move cache name enum.
modules Update deps and bump version to 2.0.0-SNAPSHOT
multitenancy Update deps and bump version to 2.0.0-SNAPSHOT
oauth Update deps and bump version to 2.0.0-SNAPSHOT
openshift Add clustered tx tracking.
preprocessors Update deps and bump version to 2.0.0-SNAPSHOT
prospectivesearch Move cache name enum.
quota Update deps and bump version to 2.0.0-SNAPSHOT
search Remove info log.
sql Update deps and bump version to 2.0.0-SNAPSHOT
tasks Override namespace.
testsuite Use JPA 2.1.
tools Exclude managed vm artifacts.
urlfetch Move Shared to sub Integration module.
users Make CD auth mechanism default.
xmpp Go back to talk.l.google.com.
.gitignore [CAPEDWARF-205]; rewrite auth mechanism.
README.md Add kerbymart's Restlet example.
pom.xml Upgrade WF and UT.

README.md

JBoss CapeDwarf

JBoss CapeDwarf Blue is JBoss' attempt to implement Google App Engine API on top of JBoss' technology / frameworks / libraries. This way making the GAE to WildFly switch seamless.

At JBoss.org

http://www.jboss.org/capedwarf

How to build CapeDwarf environment?

(1) Build WildFly 8.1.0.CR1 from WildFly repo --> JBOSS_HOME

https://github.com/wildfly/wildfly

git checkout 8.1.0.CR1

mvn clean install -DskipTests -Prelease

Or you can grab it from WildFly downloads.

http://wildfly.org/downloads/

(2) Build CapeDwarf Shared ("master" branch)

https://github.com/capedwarf/capedwarf-shared

mvn clean install

(3) Build CapeDwarf Blue ("master" branch)

https://github.com/capedwarf/capedwarf-blue

mvn clean install

(4) Build CapeDwarf WildFly ("master" branch)

https://github.com/capedwarf/capedwarf-jboss-as

mvn clean install -Djboss.dir=${JBOSS_HOME} -Pupdate-as

This will install CapeDwarf Subsystem into previous WildFly 8.1.0.CR1

(5) Start CapeDwarf

cd ${JBOSS_HOME}/bin

./capedwarf.sh

or the long version

./standalone.sh -c standalone-capedwarf.xml

and with Modules support

./standalone.sh -c standalone-capedwarf-modules.xml

Voila!

How to test CapeDwarf environment?

There are multiple ways to test it:

(1) Run Blue's tests against running CapeDwarf WildFly instance

Goto CapeDwarf Blue and simply run

mvn clean install -Premote

(2) Run tests automatically with CapeDwarf Testsuite ("master" branch)

https://github.com/capedwarf/capedwarf-testsuite

where you then simply do

mvn clean install -Dcapedwarf.xmpp.password=<PASSWORD> -Djboss.mail.host=<SMTP HOST>

This will grab WildFly .zip distribution, overlay it with CapeDwarf extension, and run tests via managed Arquillian WildFly container.

(3) Run different versions of GAE API jar against CapeDwarf

https://github.com/capedwarf/capedwarf-versions

(4) Run some benchmarks against CapeDwarf

https://github.com/capedwarf/capedwarf-benchmark

(5) Run GAE TCK against CapeDwarf

https://github.com/GoogleCloudPlatform/appengine-tck

mvn clean install -Pcapedwarf

Any example apps I can deploy?

Simply start a CapeDwarf instance and drop any GAE .war into {JBOSS_HOME}/standalone/deployment or deploy the .war via WildFly's management console.

If your app requires to be accessible under "/" context root, deploy it as ROOT.war.
Otherwise it will be accessible under "/<app name>" context.

Existing examples / demos:

(1) GAE SDK comes with a bunch of examples, and we make sure they work on CapeDwarf as well. (at least the one's that are 100% portable)

https://github.com/GoogleCloudPlatform/

(2) A SimpleChat app, exposing Channel API

https://github.com/alesj/simplechat

(3) A ToDo list app

https://github.com/capedwarf/todolist

(4) Restlet on OpenShift

https://github.com/kerbymart/capedwarf-restlet
Something went wrong with that request. Please try again.