0
votes

I have the same problem as this post (In Corda, `No installed custom CorDapps.` on node's built-in webserver).

Here's what I did:
1. I'm using the Java version of Tokens-SDK, it has a different folder structure from the examples mentioned in the solution of that post (i.e. clients, contracts, and workflows are 3 separate modules rather than one module).
2. Here's my latest commit with the below mentioned changes: https://github.com/adelRestom/corda-tokens-api/commit/4fc730b352a184c3848ef2455e0fbb9e712a4e2b
4. I created the class ExamplePlugin inside clients module
5. I created the file net.corda.webserver.services.WebServerPluginRegistry inside clients module
6. I updated build.gradle under the root folder of the project and added cordapp project(":clients") as a dependency (I'm not a gradle expert, but I assume that this should add this module to the jar file of the cordapp)
7. I ran ./gradlew jar
8. I uploaded the jar file to /opt/corda/cordapps inside my google cloud VM
9. I started the node using run-corda.sh
10. I went to my browser and used the external IP address of my node with port 8080
11. I get No installed custom CordApps

Can you please have a look at my repository and see what am I missing?

2

2 Answers

0
votes

After going through the repository, found that - Cordapp "clients" is not added in "task deployNodes" (see below)

task deployNodes(type: net.corda.plugins.Cordform, dependsOn: ['jar']) {
    nodeDefaults {
        projectCordapp {
            deploy = false
        }
        cordapp("$tokens_release_group:tokens-contracts:$tokens_release_version")
        cordapp("$tokens_release_group:tokens-workflows:$tokens_release_version")
        cordapp("$tokens_release_group:tokens-money:$tokens_release_version")
        cordapp project(':contracts')
        cordapp project(':workflows')
    }

Please check

0
votes

I changed my approach:
1. I generated the jars for contracts.jar and workflows.jar
2. I generated the SpringBoot webserver as a standalone jar (using ./gradlew bootJar)
3. I started the node
4. I started the webserver
5. I was able to access my API end points