Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

A Java CorDapp Template.

License

NotificationsYou must be signed in to change notification settings

corda/cordapp-template-java

Repository files navigation

Corda

CorDapp Template - Java

Welcome to the Java CorDapp template. The CorDapp template is a stubbed-out CorDapp that you can use to bootstrapyour own CorDapps.

This is the Java version of the CorDapp template. The Kotlin equivalent ishere.

Pre-Requisites

Seehttps://docs.corda.net/getting-set-up.html.

Usage

Running tests inside IntelliJ

We recommend editing your IntelliJ preferences so that you use the Gradle runner - this means that the quasar utilsplugin will make sure that some flags (like-javaagent - see below) areset for you.

To switch to using the Gradle runner:

  • Navigate toBuild, Execution, Deployment -> Build Tools -> Gradle -> Runner (or search forrunner)
    • Windows: this is in "Settings"
    • MacOS: this is in "Preferences"
  • Set "Delegate IDE build/run actions to gradle" to true
  • Set "Run test using:" to "Gradle Test Runner"

If you would prefer to use the built in IntelliJ JUnit test runner, you can rungradlew installQuasar which willcopy your quasar JAR file to the lib directory. You will then need to specify-javaagent:lib/quasar.jarand set the run directory to the project root directory for each test.

Running the nodes

Seehttps://docs.corda.net/tutorial-cordapp.html#running-the-example-cordapp.

Interacting with the nodes

Shell

When started via the command line, each node will display an interactive shell:

Welcome to the Corda interactive shell.Useful commands include 'help' to see what is available, and 'bye' to shut down the node.Tue Nov 06 11:58:13 GMT 2018>>>

You can use this shell to interact with your node. For example, enterrun networkMapSnapshot to see a list ofthe other nodes on the network:

Tue Nov 06 11:58:13 GMT 2018>>> run networkMapSnapshot[  {  "addresses" : [ "localhost:10002" ],  "legalIdentitiesAndCerts" : [ "O=Notary, L=London, C=GB" ],  "platformVersion" : 3,  "serial" : 1541505484825},  {  "addresses" : [ "localhost:10005" ],  "legalIdentitiesAndCerts" : [ "O=PartyA, L=London, C=GB" ],  "platformVersion" : 3,  "serial" : 1541505382560},  {  "addresses" : [ "localhost:10008" ],  "legalIdentitiesAndCerts" : [ "O=PartyB, L=New York, C=US" ],  "platformVersion" : 3,  "serial" : 1541505384742}]Tue Nov 06 12:30:11 GMT 2018>>>

You can find out more about the node shellhere.

Client

clients/src/main/java/com/template/Client.java defines a simple command-line client that connects to a node via RPCand prints a list of the other nodes on the network.

Running the client

Via the command line

Run therunTemplateClient Gradle task. By default, it connects to the node with RPC addresslocalhost:10006 withthe usernameuser1 and the passwordtest.

Via IntelliJ

Run theRun Template Client run configuration. By default, it connects to the node with RPC addresslocalhost:10006with the usernameuser1 and the passwordtest.

Webserver

clients/src/main/java/com/template/webserver/ defines a simple Spring webserver that connects to a node via RPC andallows you to interact with the node over HTTP.

The API endpoints are defined here:

 clients/src/main/java/com/template/webserver/Controller.java

And a static webpage is defined here:

 clients/src/main/resources/static/

Running the webserver

Via the command line

Run therunTemplateServer Gradle task. By default, it connects to the node with RPC addresslocalhost:10006 withthe usernameuser1 and the passwordtest, and serves the webserver on portlocalhost:10050.

Via IntelliJ

Run theRun Template Server run configuration. By default, it connects to the node with RPC addresslocalhost:10006with the usernameuser1 and the passwordtest, and serves the webserver on portlocalhost:10050.

Interacting with the webserver

The static webpage is served on:

http://localhost:10050

While the sole template endpoint is served on:

http://localhost:10050/templateendpoint

Extending the template

You should extend this template as follows:

  • Add your own state and contract definitions undercontracts/src/main/java/
  • Add your own flow definitions underworkflows/src/main/java/
  • Extend or replace the client and webserver underclients/src/main/java/

For a guided example of how to extend this template, see the Hello, World! tutorialhere.

About

A Java CorDapp Template.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors36


[8]ページ先頭

©2009-2025 Movatter.jp