diff --git a/.gitignore b/.gitignore
index 63109501..7338812b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -13,9 +13,11 @@ vendor/
.idea
# Dependency directories
node_modules/
+package-lock.json
# Ignore Gradle build output directory
build
-package-lock.json
+# Ignore Maven build output directory
+target
# Eclipse
.classpath
diff --git a/asset-transfer-basic/application-gateway-go/assetTransfer.go b/asset-transfer-basic/application-gateway-go/assetTransfer.go
index 99830212..348d2341 100755
--- a/asset-transfer-basic/application-gateway-go/assetTransfer.go
+++ b/asset-transfer-basic/application-gateway-go/assetTransfer.go
@@ -280,7 +280,7 @@ func exampleErrorHandling(contract *client.Contract) {
for _, detail := range details {
switch detail := detail.(type) {
case *gateway.ErrorDetail:
- fmt.Printf("- address: %s, mspId: %s, message: %s\n", detail.Address, detail.MspId, detail.Message)
+ fmt.Printf("- address: %s; mspId: %s; message: %s\n", detail.Address, detail.MspId, detail.Message)
}
}
}
diff --git a/asset-transfer-basic/application-gateway-go/go.mod b/asset-transfer-basic/application-gateway-go/go.mod
index c7fd63d0..7261969c 100644
--- a/asset-transfer-basic/application-gateway-go/go.mod
+++ b/asset-transfer-basic/application-gateway-go/go.mod
@@ -3,17 +3,17 @@ module assetTransfer
go 1.22.0
require (
- github.com/hyperledger/fabric-gateway v1.6.0
- github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3
- google.golang.org/grpc v1.67.0
+ github.com/hyperledger/fabric-gateway v1.7.0
+ github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4
+ google.golang.org/grpc v1.67.1
)
require (
github.com/miekg/pkcs11 v1.1.1 // indirect
- golang.org/x/crypto v0.27.0 // indirect
+ golang.org/x/crypto v0.28.0 // indirect
golang.org/x/net v0.28.0 // indirect
- golang.org/x/sys v0.25.0 // indirect
- golang.org/x/text v0.18.0 // indirect
+ golang.org/x/sys v0.26.0 // indirect
+ golang.org/x/text v0.19.0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
- google.golang.org/protobuf v1.34.2 // indirect
+ google.golang.org/protobuf v1.35.1 // indirect
)
diff --git a/asset-transfer-basic/application-gateway-go/go.sum b/asset-transfer-basic/application-gateway-go/go.sum
index b86c0a8c..01eab6a8 100644
--- a/asset-transfer-basic/application-gateway-go/go.sum
+++ b/asset-transfer-basic/application-gateway-go/go.sum
@@ -2,31 +2,31 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
-github.com/hyperledger/fabric-gateway v1.6.0 h1:mPdXFSHdEjT0cmhsqKBfFMTVyBvfJXlO3Neicp/c27E=
-github.com/hyperledger/fabric-gateway v1.6.0/go.mod h1:qHdJcgC6UrTxfYH+YIyAhPUkeNri0gPpyP/6xmiYrZo=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3 h1:Xpd6fzG/KjAOHJsq7EQXY2l+qi/y8muxBaY7R6QWABk=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3/go.mod h1:2pq0ui6ZWA0cC8J+eCErgnMDCS1kPOEYVY+06ZAK0qE=
+github.com/hyperledger/fabric-gateway v1.7.0 h1:bd1quU8qYPYqYO69m1tPIDSjB+D+u/rBJfE1eWFcpjY=
+github.com/hyperledger/fabric-gateway v1.7.0/go.mod h1:TItDGnq71eJcgz5TW+m5Sq3kWGp0AEI1HPCNxj0Eu7k=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4 h1:YJrd+gMaeY0/vsN0aS0QkEKTivGoUnSRIXxGJ7KI+Pc=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4/go.mod h1:bau/6AJhvEcu9GKKYHlDXAxXKzYNfhP6xu2GXuxEcFk=
github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU=
github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
+github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
-go.uber.org/mock v0.4.0 h1:VcM4ZOtdbR4f6VXfiOpwpVJDL6lCReaZ6mw31wqh7KU=
-go.uber.org/mock v0.4.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc=
-golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
-golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
+golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw=
+golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
-golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
-golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
-golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
-golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
+golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
+golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
+golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 h1:e7S5W7MGGLaSu8j3YjdezkZ+m1/Nm0uRVRMEMGk26Xs=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU=
-google.golang.org/grpc v1.67.0 h1:IdH9y6PF5MPSdAntIcpjQ+tXO41pcQsfZV2RxtQgVcw=
-google.golang.org/grpc v1.67.0/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
-google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
-google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
+google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E=
+google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
+google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
+google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/asset-transfer-basic/application-gateway-java/build.gradle b/asset-transfer-basic/application-gateway-java/build.gradle
index 552d10f2..7db92de8 100644
--- a/asset-transfer-basic/application-gateway-java/build.gradle
+++ b/asset-transfer-basic/application-gateway-java/build.gradle
@@ -8,10 +8,10 @@
plugins {
// Apply the application plugin to add support for building a CLI application.
id 'application'
-
}
+
ext {
- javaMainClass = "application.java.App"
+ javaMainClass = "application.java.App"
}
repositories {
@@ -19,9 +19,11 @@ repositories {
}
dependencies {
- implementation 'org.hyperledger.fabric:fabric-gateway:1.6.0'
- compileOnly 'io.grpc:grpc-api:1.68.0'
- runtimeOnly 'io.grpc:grpc-netty-shaded:1.68.0'
+ implementation 'org.hyperledger.fabric:fabric-gateway:1.7.0'
+ implementation platform('com.google.protobuf:protobuf-bom:4.28.2')
+ implementation platform('io.grpc:grpc-bom:1.67.1')
+ compileOnly 'io.grpc:grpc-api'
+ runtimeOnly 'io.grpc:grpc-netty-shaded'
implementation 'com.google.code.gson:gson:2.11.0'
}
diff --git a/asset-transfer-basic/application-gateway-java/pom.xml b/asset-transfer-basic/application-gateway-java/pom.xml
new file mode 100644
index 00000000..76c7dc7b
--- /dev/null
+++ b/asset-transfer-basic/application-gateway-java/pom.xml
@@ -0,0 +1,96 @@
+
+
+ 4.0.0
+
+ org.hyperledger.fabric.example
+ asset-transfer-basic
+ 1.0-SNAPSHOT
+
+
+ UTF-8
+ 11
+
+
+
+
+
+ com.google.protobuf
+ protobuf-bom
+ 4.28.2
+ pom
+ import
+
+
+ io.grpc
+ grpc-bom
+ 1.67.1
+ pom
+ import
+
+
+
+
+
+
+ org.hyperledger.fabric
+ fabric-gateway
+ 1.7.0
+
+
+ io.grpc
+ grpc-api
+
+
+ io.grpc
+ grpc-netty-shaded
+ runtime
+
+
+
+
+
+
+
+
+ maven-clean-plugin
+ 3.4.0
+
+
+
+ maven-resources-plugin
+ 3.3.1
+
+
+ maven-compiler-plugin
+ 3.13.0
+
+
+ maven-surefire-plugin
+ 3.3.0
+
+
+ maven-jar-plugin
+ 3.4.2
+
+
+ maven-install-plugin
+ 3.1.2
+
+
+ maven-deploy-plugin
+ 3.1.2
+
+
+
+ maven-site-plugin
+ 3.12.1
+
+
+ maven-project-info-reports-plugin
+ 3.6.1
+
+
+
+
+
diff --git a/asset-transfer-basic/application-gateway-java/src/main/java/App.java b/asset-transfer-basic/application-gateway-java/src/main/java/App.java
index 6934648c..57285ef8 100644
--- a/asset-transfer-basic/application-gateway-java/src/main/java/App.java
+++ b/asset-transfer-basic/application-gateway-java/src/main/java/App.java
@@ -231,20 +231,11 @@ public final class App {
System.out.println("******** FAILED to return an error");
} catch (EndorseException | SubmitException | CommitStatusException e) {
- System.out.println("*** Successfully caught the error: ");
+ System.out.println("*** Successfully caught the error:");
e.printStackTrace(System.out);
System.out.println("Transaction ID: " + e.getTransactionId());
-
- var details = e.getDetails();
- if (!details.isEmpty()) {
- System.out.println("Error Details:");
- for (var detail : details) {
- System.out.println("- address: " + detail.getAddress() + ", mspId: " + detail.getMspId()
- + ", message: " + detail.getMessage());
- }
- }
} catch (CommitException e) {
- System.out.println("*** Successfully caught the error: " + e);
+ System.out.println("*** Successfully caught the error:");
e.printStackTrace(System.out);
System.out.println("Transaction ID: " + e.getTransactionId());
System.out.println("Status code: " + e.getCode());
diff --git a/asset-transfer-basic/application-gateway-javascript/package.json b/asset-transfer-basic/application-gateway-javascript/package.json
index 7debd6cb..896e6339 100644
--- a/asset-transfer-basic/application-gateway-javascript/package.json
+++ b/asset-transfer-basic/application-gateway-javascript/package.json
@@ -14,8 +14,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0"
},
"devDependencies": {
"@eslint/js": "^9.5.0",
diff --git a/asset-transfer-basic/application-gateway-typescript/package.json b/asset-transfer-basic/application-gateway-typescript/package.json
index a0e5eaea..5327cb76 100644
--- a/asset-transfer-basic/application-gateway-typescript/package.json
+++ b/asset-transfer-basic/application-gateway-typescript/package.json
@@ -19,8 +19,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0"
},
"devDependencies": {
"@eslint/js": "^9.3.0",
diff --git a/asset-transfer-basic/chaincode-java/src/main/java/org/hyperledger/fabric/samples/assettransfer/AssetTransfer.java b/asset-transfer-basic/chaincode-java/src/main/java/org/hyperledger/fabric/samples/assettransfer/AssetTransfer.java
index 41c55ddc..68e3b139 100644
--- a/asset-transfer-basic/chaincode-java/src/main/java/org/hyperledger/fabric/samples/assettransfer/AssetTransfer.java
+++ b/asset-transfer-basic/chaincode-java/src/main/java/org/hyperledger/fabric/samples/assettransfer/AssetTransfer.java
@@ -53,14 +53,12 @@ public final class AssetTransfer implements ContractInterface {
*/
@Transaction(intent = Transaction.TYPE.SUBMIT)
public void InitLedger(final Context ctx) {
- ChaincodeStub stub = ctx.getStub();
-
- CreateAsset(ctx, "asset1", "blue", 5, "Tomoko", 300);
- CreateAsset(ctx, "asset2", "red", 5, "Brad", 400);
- CreateAsset(ctx, "asset3", "green", 10, "Jin Soo", 500);
- CreateAsset(ctx, "asset4", "yellow", 10, "Max", 600);
- CreateAsset(ctx, "asset5", "black", 15, "Adrian", 700);
- CreateAsset(ctx, "asset6", "white", 15, "Michel", 700);
+ putAsset(ctx, new Asset("asset1", "blue", 5, "Tomoko", 300));
+ putAsset(ctx, new Asset("asset2", "red", 5, "Brad", 400));
+ putAsset(ctx, new Asset("asset3", "green", 10, "Jin Soo", 500));
+ putAsset(ctx, new Asset("asset4", "yellow", 10, "Max", 600));
+ putAsset(ctx, new Asset("asset5", "black", 15, "Adrian", 700));
+ putAsset(ctx, new Asset("asset6", "white", 15, "Michel", 700));
}
@@ -78,7 +76,6 @@ public final class AssetTransfer implements ContractInterface {
@Transaction(intent = Transaction.TYPE.SUBMIT)
public Asset CreateAsset(final Context ctx, final String assetID, final String color, final int size,
final String owner, final int appraisedValue) {
- ChaincodeStub stub = ctx.getStub();
if (AssetExists(ctx, assetID)) {
String errorMessage = String.format("Asset %s already exists", assetID);
@@ -86,10 +83,13 @@ public final class AssetTransfer implements ContractInterface {
throw new ChaincodeException(errorMessage, AssetTransferErrors.ASSET_ALREADY_EXISTS.toString());
}
- Asset asset = new Asset(assetID, color, size, owner, appraisedValue);
+ return putAsset(ctx, new Asset(assetID, color, size, owner, appraisedValue));
+ }
+
+ private Asset putAsset(final Context ctx, final Asset asset) {
// Use Genson to convert the Asset into string, sort it alphabetically and serialize it into a json string
String sortedJson = genson.serialize(asset);
- stub.putStringState(assetID, sortedJson);
+ ctx.getStub().putStringState(asset.getAssetID(), sortedJson);
return asset;
}
@@ -103,8 +103,7 @@ public final class AssetTransfer implements ContractInterface {
*/
@Transaction(intent = Transaction.TYPE.EVALUATE)
public Asset ReadAsset(final Context ctx, final String assetID) {
- ChaincodeStub stub = ctx.getStub();
- String assetJSON = stub.getStringState(assetID);
+ String assetJSON = ctx.getStub().getStringState(assetID);
if (assetJSON == null || assetJSON.isEmpty()) {
String errorMessage = String.format("Asset %s does not exist", assetID);
@@ -112,8 +111,7 @@ public final class AssetTransfer implements ContractInterface {
throw new ChaincodeException(errorMessage, AssetTransferErrors.ASSET_NOT_FOUND.toString());
}
- Asset asset = genson.deserialize(assetJSON, Asset.class);
- return asset;
+ return genson.deserialize(assetJSON, Asset.class);
}
/**
@@ -130,7 +128,6 @@ public final class AssetTransfer implements ContractInterface {
@Transaction(intent = Transaction.TYPE.SUBMIT)
public Asset UpdateAsset(final Context ctx, final String assetID, final String color, final int size,
final String owner, final int appraisedValue) {
- ChaincodeStub stub = ctx.getStub();
if (!AssetExists(ctx, assetID)) {
String errorMessage = String.format("Asset %s does not exist", assetID);
@@ -138,11 +135,7 @@ public final class AssetTransfer implements ContractInterface {
throw new ChaincodeException(errorMessage, AssetTransferErrors.ASSET_NOT_FOUND.toString());
}
- Asset newAsset = new Asset(assetID, color, size, owner, appraisedValue);
- // Use Genson to convert the Asset into string, sort it alphabetically and serialize it into a json string
- String sortedJson = genson.serialize(newAsset);
- stub.putStringState(assetID, sortedJson);
- return newAsset;
+ return putAsset(ctx, new Asset(assetID, color, size, owner, appraisedValue));
}
/**
@@ -153,15 +146,13 @@ public final class AssetTransfer implements ContractInterface {
*/
@Transaction(intent = Transaction.TYPE.SUBMIT)
public void DeleteAsset(final Context ctx, final String assetID) {
- ChaincodeStub stub = ctx.getStub();
-
if (!AssetExists(ctx, assetID)) {
String errorMessage = String.format("Asset %s does not exist", assetID);
System.out.println(errorMessage);
throw new ChaincodeException(errorMessage, AssetTransferErrors.ASSET_NOT_FOUND.toString());
}
- stub.delState(assetID);
+ ctx.getStub().delState(assetID);
}
/**
@@ -173,8 +164,7 @@ public final class AssetTransfer implements ContractInterface {
*/
@Transaction(intent = Transaction.TYPE.EVALUATE)
public boolean AssetExists(final Context ctx, final String assetID) {
- ChaincodeStub stub = ctx.getStub();
- String assetJSON = stub.getStringState(assetID);
+ String assetJSON = ctx.getStub().getStringState(assetID);
return (assetJSON != null && !assetJSON.isEmpty());
}
@@ -189,8 +179,7 @@ public final class AssetTransfer implements ContractInterface {
*/
@Transaction(intent = Transaction.TYPE.SUBMIT)
public String TransferAsset(final Context ctx, final String assetID, final String newOwner) {
- ChaincodeStub stub = ctx.getStub();
- String assetJSON = stub.getStringState(assetID);
+ String assetJSON = ctx.getStub().getStringState(assetID);
if (assetJSON == null || assetJSON.isEmpty()) {
String errorMessage = String.format("Asset %s does not exist", assetID);
@@ -200,10 +189,7 @@ public final class AssetTransfer implements ContractInterface {
Asset asset = genson.deserialize(assetJSON, Asset.class);
- Asset newAsset = new Asset(asset.getAssetID(), asset.getColor(), asset.getSize(), newOwner, asset.getAppraisedValue());
- // Use a Genson to conver the Asset into string, sort it alphabetically and serialize it into a json string
- String sortedJson = genson.serialize(newAsset);
- stub.putStringState(assetID, sortedJson);
+ putAsset(ctx, new Asset(asset.getAssetID(), asset.getColor(), asset.getSize(), newOwner, asset.getAppraisedValue()));
return asset.getOwner();
}
@@ -218,7 +204,7 @@ public final class AssetTransfer implements ContractInterface {
public String GetAllAssets(final Context ctx) {
ChaincodeStub stub = ctx.getStub();
- List queryResults = new ArrayList();
+ List queryResults = new ArrayList<>();
// To retrieve all assets from the ledger use getStateByRange with empty startKey & endKey.
// Giving empty startKey & endKey is interpreted as all the keys from beginning to end.
@@ -232,8 +218,6 @@ public final class AssetTransfer implements ContractInterface {
queryResults.add(asset);
}
- final String response = genson.serialize(queryResults);
-
- return response;
+ return genson.serialize(queryResults);
}
}
diff --git a/asset-transfer-basic/rest-api-go/go.mod b/asset-transfer-basic/rest-api-go/go.mod
index 9e2c49ff..8324149c 100644
--- a/asset-transfer-basic/rest-api-go/go.mod
+++ b/asset-transfer-basic/rest-api-go/go.mod
@@ -3,17 +3,17 @@ module rest-api-go
go 1.22.0
require (
- github.com/hyperledger/fabric-gateway v1.6.0
- google.golang.org/grpc v1.67.0
+ github.com/hyperledger/fabric-gateway v1.7.0
+ google.golang.org/grpc v1.67.1
)
require (
- github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3 // indirect
+ github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4 // indirect
github.com/miekg/pkcs11 v1.1.1 // indirect
- golang.org/x/crypto v0.27.0 // indirect
+ golang.org/x/crypto v0.28.0 // indirect
golang.org/x/net v0.28.0 // indirect
- golang.org/x/sys v0.25.0 // indirect
- golang.org/x/text v0.18.0 // indirect
+ golang.org/x/sys v0.26.0 // indirect
+ golang.org/x/text v0.19.0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
- google.golang.org/protobuf v1.34.2 // indirect
+ google.golang.org/protobuf v1.35.1 // indirect
)
diff --git a/asset-transfer-basic/rest-api-go/go.sum b/asset-transfer-basic/rest-api-go/go.sum
index b86c0a8c..01eab6a8 100644
--- a/asset-transfer-basic/rest-api-go/go.sum
+++ b/asset-transfer-basic/rest-api-go/go.sum
@@ -2,31 +2,31 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
-github.com/hyperledger/fabric-gateway v1.6.0 h1:mPdXFSHdEjT0cmhsqKBfFMTVyBvfJXlO3Neicp/c27E=
-github.com/hyperledger/fabric-gateway v1.6.0/go.mod h1:qHdJcgC6UrTxfYH+YIyAhPUkeNri0gPpyP/6xmiYrZo=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3 h1:Xpd6fzG/KjAOHJsq7EQXY2l+qi/y8muxBaY7R6QWABk=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3/go.mod h1:2pq0ui6ZWA0cC8J+eCErgnMDCS1kPOEYVY+06ZAK0qE=
+github.com/hyperledger/fabric-gateway v1.7.0 h1:bd1quU8qYPYqYO69m1tPIDSjB+D+u/rBJfE1eWFcpjY=
+github.com/hyperledger/fabric-gateway v1.7.0/go.mod h1:TItDGnq71eJcgz5TW+m5Sq3kWGp0AEI1HPCNxj0Eu7k=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4 h1:YJrd+gMaeY0/vsN0aS0QkEKTivGoUnSRIXxGJ7KI+Pc=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4/go.mod h1:bau/6AJhvEcu9GKKYHlDXAxXKzYNfhP6xu2GXuxEcFk=
github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU=
github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
+github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
-go.uber.org/mock v0.4.0 h1:VcM4ZOtdbR4f6VXfiOpwpVJDL6lCReaZ6mw31wqh7KU=
-go.uber.org/mock v0.4.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc=
-golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
-golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
+golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw=
+golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
-golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
-golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
-golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
-golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
+golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
+golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
+golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 h1:e7S5W7MGGLaSu8j3YjdezkZ+m1/Nm0uRVRMEMGk26Xs=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU=
-google.golang.org/grpc v1.67.0 h1:IdH9y6PF5MPSdAntIcpjQ+tXO41pcQsfZV2RxtQgVcw=
-google.golang.org/grpc v1.67.0/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
-google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
-google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
+google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E=
+google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
+google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
+google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/asset-transfer-events/application-gateway-go/go.mod b/asset-transfer-events/application-gateway-go/go.mod
index c1f160e2..65128cfd 100644
--- a/asset-transfer-events/application-gateway-go/go.mod
+++ b/asset-transfer-events/application-gateway-go/go.mod
@@ -3,17 +3,17 @@ module assetTransfer
go 1.22.0
require (
- github.com/hyperledger/fabric-gateway v1.6.0
- google.golang.org/grpc v1.67.0
+ github.com/hyperledger/fabric-gateway v1.7.0
+ google.golang.org/grpc v1.67.1
)
require (
- github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3 // indirect
+ github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4 // indirect
github.com/miekg/pkcs11 v1.1.1 // indirect
- golang.org/x/crypto v0.27.0 // indirect
+ golang.org/x/crypto v0.28.0 // indirect
golang.org/x/net v0.28.0 // indirect
- golang.org/x/sys v0.25.0 // indirect
- golang.org/x/text v0.18.0 // indirect
+ golang.org/x/sys v0.26.0 // indirect
+ golang.org/x/text v0.19.0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
- google.golang.org/protobuf v1.34.2 // indirect
+ google.golang.org/protobuf v1.35.1 // indirect
)
diff --git a/asset-transfer-events/application-gateway-go/go.sum b/asset-transfer-events/application-gateway-go/go.sum
index b86c0a8c..01eab6a8 100644
--- a/asset-transfer-events/application-gateway-go/go.sum
+++ b/asset-transfer-events/application-gateway-go/go.sum
@@ -2,31 +2,31 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
-github.com/hyperledger/fabric-gateway v1.6.0 h1:mPdXFSHdEjT0cmhsqKBfFMTVyBvfJXlO3Neicp/c27E=
-github.com/hyperledger/fabric-gateway v1.6.0/go.mod h1:qHdJcgC6UrTxfYH+YIyAhPUkeNri0gPpyP/6xmiYrZo=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3 h1:Xpd6fzG/KjAOHJsq7EQXY2l+qi/y8muxBaY7R6QWABk=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3/go.mod h1:2pq0ui6ZWA0cC8J+eCErgnMDCS1kPOEYVY+06ZAK0qE=
+github.com/hyperledger/fabric-gateway v1.7.0 h1:bd1quU8qYPYqYO69m1tPIDSjB+D+u/rBJfE1eWFcpjY=
+github.com/hyperledger/fabric-gateway v1.7.0/go.mod h1:TItDGnq71eJcgz5TW+m5Sq3kWGp0AEI1HPCNxj0Eu7k=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4 h1:YJrd+gMaeY0/vsN0aS0QkEKTivGoUnSRIXxGJ7KI+Pc=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4/go.mod h1:bau/6AJhvEcu9GKKYHlDXAxXKzYNfhP6xu2GXuxEcFk=
github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU=
github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
+github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
-go.uber.org/mock v0.4.0 h1:VcM4ZOtdbR4f6VXfiOpwpVJDL6lCReaZ6mw31wqh7KU=
-go.uber.org/mock v0.4.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc=
-golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
-golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
+golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw=
+golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
-golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
-golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
-golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
-golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
+golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
+golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
+golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 h1:e7S5W7MGGLaSu8j3YjdezkZ+m1/Nm0uRVRMEMGk26Xs=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU=
-google.golang.org/grpc v1.67.0 h1:IdH9y6PF5MPSdAntIcpjQ+tXO41pcQsfZV2RxtQgVcw=
-google.golang.org/grpc v1.67.0/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
-google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
-google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
+google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E=
+google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
+google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
+google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/asset-transfer-events/application-gateway-java/build.gradle b/asset-transfer-events/application-gateway-java/build.gradle
index 432c9c5b..e0743122 100644
--- a/asset-transfer-events/application-gateway-java/build.gradle
+++ b/asset-transfer-events/application-gateway-java/build.gradle
@@ -8,9 +8,11 @@ repositories {
}
dependencies {
- implementation 'org.hyperledger.fabric:fabric-gateway:1.6.0'
- compileOnly 'io.grpc:grpc-api:1.68.0'
- runtimeOnly 'io.grpc:grpc-netty-shaded:1.68.0'
+ implementation 'org.hyperledger.fabric:fabric-gateway:1.7.0'
+ implementation platform('com.google.protobuf:protobuf-bom:4.28.2')
+ implementation platform('io.grpc:grpc-bom:1.67.1')
+ compileOnly 'io.grpc:grpc-api'
+ runtimeOnly 'io.grpc:grpc-netty-shaded'
implementation 'com.google.code.gson:gson:2.11.0'
}
diff --git a/asset-transfer-events/application-gateway-java/pom.xml b/asset-transfer-events/application-gateway-java/pom.xml
new file mode 100644
index 00000000..e959e925
--- /dev/null
+++ b/asset-transfer-events/application-gateway-java/pom.xml
@@ -0,0 +1,101 @@
+
+
+ 4.0.0
+
+ org.hyperledger.fabric.example
+ asset-transfer-events
+ 1.0-SNAPSHOT
+
+
+ UTF-8
+ 11
+
+
+
+
+
+ com.google.protobuf
+ protobuf-bom
+ 4.28.2
+ pom
+ import
+
+
+ io.grpc
+ grpc-bom
+ 1.67.1
+ pom
+ import
+
+
+
+
+
+
+ org.hyperledger.fabric
+ fabric-gateway
+ 1.7.0
+
+
+ io.grpc
+ grpc-api
+
+
+ io.grpc
+ grpc-netty-shaded
+ runtime
+
+
+ com.google.code.gson
+ gson
+ 2.11.0
+
+
+
+
+
+
+
+
+ maven-clean-plugin
+ 3.4.0
+
+
+
+ maven-resources-plugin
+ 3.3.1
+
+
+ maven-compiler-plugin
+ 3.13.0
+
+
+ maven-surefire-plugin
+ 3.3.0
+
+
+ maven-jar-plugin
+ 3.4.2
+
+
+ maven-install-plugin
+ 3.1.2
+
+
+ maven-deploy-plugin
+ 3.1.2
+
+
+
+ maven-site-plugin
+ 3.12.1
+
+
+ maven-project-info-reports-plugin
+ 3.6.1
+
+
+
+
+
diff --git a/asset-transfer-events/application-gateway-typescript/package.json b/asset-transfer-events/application-gateway-typescript/package.json
index 471371fa..24ca024e 100755
--- a/asset-transfer-events/application-gateway-typescript/package.json
+++ b/asset-transfer-events/application-gateway-typescript/package.json
@@ -19,8 +19,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0"
},
"devDependencies": {
"@eslint/js": "^9.3.0",
diff --git a/asset-transfer-private-data/application-gateway-typescript/package.json b/asset-transfer-private-data/application-gateway-typescript/package.json
index 6c909e4a..96d609bf 100644
--- a/asset-transfer-private-data/application-gateway-typescript/package.json
+++ b/asset-transfer-private-data/application-gateway-typescript/package.json
@@ -19,8 +19,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0"
},
"devDependencies": {
"@eslint/js": "^9.3.0",
diff --git a/asset-transfer-secured-agreement/application-gateway-typescript/package.json b/asset-transfer-secured-agreement/application-gateway-typescript/package.json
index b3b32a9c..adcec840 100644
--- a/asset-transfer-secured-agreement/application-gateway-typescript/package.json
+++ b/asset-transfer-secured-agreement/application-gateway-typescript/package.json
@@ -19,8 +19,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0"
},
"devDependencies": {
"@eslint/js": "^9.3.0",
diff --git a/ci/scripts/run-test-network-basic.sh b/ci/scripts/run-test-network-basic.sh
index 026d26c8..238e16df 100755
--- a/ci/scripts/run-test-network-basic.sh
+++ b/ci/scripts/run-test-network-basic.sh
@@ -77,6 +77,8 @@ deployChaincode
pushd ../asset-transfer-basic/application-gateway-java
print "Executing Gradle Run"
./gradlew run
+print "Executing Maven Run"
+mvn --batch-mode --no-transfer-progress compile exec:java -Dexec.mainClass=App
popd
diff --git a/ci/scripts/run-test-network-events.sh b/ci/scripts/run-test-network-events.sh
index cf7fb237..ee4fe75f 100755
--- a/ci/scripts/run-test-network-events.sh
+++ b/ci/scripts/run-test-network-events.sh
@@ -48,7 +48,9 @@ stopNetwork
createNetwork
print "Initializing Java gateway application"
pushd ../asset-transfer-events/application-gateway-java
-print "Executing application"
+print "Executing Gradle application"
./gradlew run
+print "Executing Maven application"
+mvn --batch-mode --no-transfer-progress compile exec:java -Dexec.mainClass=App
popd
stopNetwork
diff --git a/ci/scripts/run-test-network-off-chain.sh b/ci/scripts/run-test-network-off-chain.sh
index 497aef26..872cda41 100755
--- a/ci/scripts/run-test-network-off-chain.sh
+++ b/ci/scripts/run-test-network-off-chain.sh
@@ -53,9 +53,15 @@ deployChaincode
print "Initializing off-chain data application"
pushd ../off_chain_data/application-java
rm -f app/checkpoint.json app/store.log
-print "Running the output app"
+print "Running the Gradle app"
SIMULATED_FAILURE_COUNT=1 ./gradlew run --quiet --args='getAllAssets transact getAllAssets listen'
SIMULATED_FAILURE_COUNT=1 ./gradlew run --quiet --args=listen
+pushd app
+rm -f checkpoint.json store.log
+print "Executing Maven application"
+SIMULATED_FAILURE_COUNT=1 mvn --batch-mode --no-transfer-progress compile exec:java -Dexec.mainClass=App -Dexec.args='getAllAssets transact getAllAssets listen'
+SIMULATED_FAILURE_COUNT=1 mvn --batch-mode --no-transfer-progress compile exec:java -Dexec.mainClass=App -Dexec.args=listen
+popd
popd
stopNetwork
diff --git a/full-stack-asset-transfer-guide/applications/conga-cards/package.json b/full-stack-asset-transfer-guide/applications/conga-cards/package.json
index 2a93cbea..8c6d8b2c 100644
--- a/full-stack-asset-transfer-guide/applications/conga-cards/package.json
+++ b/full-stack-asset-transfer-guide/applications/conga-cards/package.json
@@ -19,8 +19,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0",
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0",
"axios": "^1.7.7",
"source-map-support": "^0.5.21"
},
diff --git a/full-stack-asset-transfer-guide/applications/ping-chaincode/package.json b/full-stack-asset-transfer-guide/applications/ping-chaincode/package.json
index d14753e8..a9ee2571 100644
--- a/full-stack-asset-transfer-guide/applications/ping-chaincode/package.json
+++ b/full-stack-asset-transfer-guide/applications/ping-chaincode/package.json
@@ -18,8 +18,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0",
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0",
"dotenv": "^16.4.5",
"env-var": "^7.5.0",
"js-yaml": "^4.1.0"
diff --git a/full-stack-asset-transfer-guide/applications/rest-api/package.json b/full-stack-asset-transfer-guide/applications/rest-api/package.json
index 01e63cca..487127ab 100644
--- a/full-stack-asset-transfer-guide/applications/rest-api/package.json
+++ b/full-stack-asset-transfer-guide/applications/rest-api/package.json
@@ -29,8 +29,8 @@
"typescript": "~5.2.2"
},
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0",
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0",
"body-parser": "^1.20.3",
"cors": "^2.8.5",
"express": "^4.21.0"
diff --git a/full-stack-asset-transfer-guide/applications/trader-typescript/package.json b/full-stack-asset-transfer-guide/applications/trader-typescript/package.json
index 1ede3671..25351959 100644
--- a/full-stack-asset-transfer-guide/applications/trader-typescript/package.json
+++ b/full-stack-asset-transfer-guide/applications/trader-typescript/package.json
@@ -19,8 +19,8 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0"
},
"devDependencies": {
"@eslint/js": "^9.3.0",
diff --git a/hardware-security-module/application-go/go.mod b/hardware-security-module/application-go/go.mod
index fbe3c2c9..0e795551 100644
--- a/hardware-security-module/application-go/go.mod
+++ b/hardware-security-module/application-go/go.mod
@@ -3,17 +3,17 @@ module github.com/hyperledger/fabric-samples/hardware-security-module/applicatio
go 1.22.0
require (
- github.com/hyperledger/fabric-gateway v1.6.0
- google.golang.org/grpc v1.67.0
+ github.com/hyperledger/fabric-gateway v1.7.0
+ google.golang.org/grpc v1.67.1
)
require (
- github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3 // indirect
+ github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4 // indirect
github.com/miekg/pkcs11 v1.1.1 // indirect
- golang.org/x/crypto v0.27.0 // indirect
+ golang.org/x/crypto v0.28.0 // indirect
golang.org/x/net v0.28.0 // indirect
- golang.org/x/sys v0.25.0 // indirect
- golang.org/x/text v0.18.0 // indirect
+ golang.org/x/sys v0.26.0 // indirect
+ golang.org/x/text v0.19.0 // indirect
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 // indirect
- google.golang.org/protobuf v1.34.2 // indirect
+ google.golang.org/protobuf v1.35.1 // indirect
)
diff --git a/hardware-security-module/application-go/go.sum b/hardware-security-module/application-go/go.sum
index b86c0a8c..01eab6a8 100644
--- a/hardware-security-module/application-go/go.sum
+++ b/hardware-security-module/application-go/go.sum
@@ -2,31 +2,31 @@ github.com/davecgh/go-spew v1.1.1 h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c
github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38=
github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=
github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
-github.com/hyperledger/fabric-gateway v1.6.0 h1:mPdXFSHdEjT0cmhsqKBfFMTVyBvfJXlO3Neicp/c27E=
-github.com/hyperledger/fabric-gateway v1.6.0/go.mod h1:qHdJcgC6UrTxfYH+YIyAhPUkeNri0gPpyP/6xmiYrZo=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3 h1:Xpd6fzG/KjAOHJsq7EQXY2l+qi/y8muxBaY7R6QWABk=
-github.com/hyperledger/fabric-protos-go-apiv2 v0.3.3/go.mod h1:2pq0ui6ZWA0cC8J+eCErgnMDCS1kPOEYVY+06ZAK0qE=
+github.com/hyperledger/fabric-gateway v1.7.0 h1:bd1quU8qYPYqYO69m1tPIDSjB+D+u/rBJfE1eWFcpjY=
+github.com/hyperledger/fabric-gateway v1.7.0/go.mod h1:TItDGnq71eJcgz5TW+m5Sq3kWGp0AEI1HPCNxj0Eu7k=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4 h1:YJrd+gMaeY0/vsN0aS0QkEKTivGoUnSRIXxGJ7KI+Pc=
+github.com/hyperledger/fabric-protos-go-apiv2 v0.3.4/go.mod h1:bau/6AJhvEcu9GKKYHlDXAxXKzYNfhP6xu2GXuxEcFk=
github.com/miekg/pkcs11 v1.1.1 h1:Ugu9pdy6vAYku5DEpVWVFPYnzV+bxB+iRdbuFSu7TvU=
github.com/miekg/pkcs11 v1.1.1/go.mod h1:XsNlhZGX73bx86s2hdc/FuaLm2CPZJemRLMA+WTFxgs=
github.com/pmezard/go-difflib v1.0.0 h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
+github.com/stretchr/objx v0.5.2 h1:xuMeJ0Sdp5ZMRXx/aWO6RZxdr3beISkG5/G/aIRr3pY=
+github.com/stretchr/objx v0.5.2/go.mod h1:FRsXN1f5AsAjCGJKqEizvkpNtU+EGNCLh3NxZ/8L+MA=
github.com/stretchr/testify v1.9.0 h1:HtqpIVDClZ4nwg75+f6Lvsy/wHu+3BoSGCbBAcpTsTg=
github.com/stretchr/testify v1.9.0/go.mod h1:r2ic/lqez/lEtzL7wO/rwa5dbSLXVDPFyf8C91i36aY=
-go.uber.org/mock v0.4.0 h1:VcM4ZOtdbR4f6VXfiOpwpVJDL6lCReaZ6mw31wqh7KU=
-go.uber.org/mock v0.4.0/go.mod h1:a6FSlNadKUHUa9IP5Vyt1zh4fC7uAwxMutEAscFbkZc=
-golang.org/x/crypto v0.27.0 h1:GXm2NjJrPaiv/h1tb2UH8QfgC/hOf/+z0p6PT8o1w7A=
-golang.org/x/crypto v0.27.0/go.mod h1:1Xngt8kV6Dvbssa53Ziq6Eqn0HqbZi5Z6R0ZpwQzt70=
+golang.org/x/crypto v0.28.0 h1:GBDwsMXVQi34v5CCYUm2jkJvu4cbtru2U4TN2PSyQnw=
+golang.org/x/crypto v0.28.0/go.mod h1:rmgy+3RHxRZMyY0jjAJShp2zgEdOqj2AO7U0pYmeQ7U=
golang.org/x/net v0.28.0 h1:a9JDOJc5GMUJ0+UDqmLT86WiEy7iWyIhz8gz8E4e5hE=
golang.org/x/net v0.28.0/go.mod h1:yqtgsTWOOnlGLG9GFRrK3++bGOUEkNBoHZc8MEDWPNg=
-golang.org/x/sys v0.25.0 h1:r+8e+loiHxRqhXVl6ML1nO3l1+oFoWbnlu2Ehimmi34=
-golang.org/x/sys v0.25.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
-golang.org/x/text v0.18.0 h1:XvMDiNzPAl0jr17s6W9lcaIhGUfUORdGCNsuLmPG224=
-golang.org/x/text v0.18.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
+golang.org/x/sys v0.26.0 h1:KHjCJyddX0LoSTb3J+vWpupP9p0oznkqVk/IfjymZbo=
+golang.org/x/sys v0.26.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA=
+golang.org/x/text v0.19.0 h1:kTxAhCbGbxhK0IwgSKiMO5awPoDQ0RpfiVYBfK860YM=
+golang.org/x/text v0.19.0/go.mod h1:BuEKDfySbSR4drPmRPG/7iBdf8hvFMuRexcpahXilzY=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142 h1:e7S5W7MGGLaSu8j3YjdezkZ+m1/Nm0uRVRMEMGk26Xs=
google.golang.org/genproto/googleapis/rpc v0.0.0-20240814211410-ddb44dafa142/go.mod h1:UqMtugtsSgubUsoxbuAoiCXvqvErP7Gf0so0mK9tHxU=
-google.golang.org/grpc v1.67.0 h1:IdH9y6PF5MPSdAntIcpjQ+tXO41pcQsfZV2RxtQgVcw=
-google.golang.org/grpc v1.67.0/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
-google.golang.org/protobuf v1.34.2 h1:6xV6lTsCfpGD21XK49h7MhtcApnLqkfYgPcdHftf6hg=
-google.golang.org/protobuf v1.34.2/go.mod h1:qYOHts0dSfpeUzUFpOMr/WGzszTmLH+DiWniOlNbLDw=
+google.golang.org/grpc v1.67.1 h1:zWnc1Vrcno+lHZCOofnIMvycFcc0QRGIzm9dhnDX68E=
+google.golang.org/grpc v1.67.1/go.mod h1:1gLDyUQU7CTLJI90u3nXZ9ekeghjeM7pTDZlqFNg2AA=
+google.golang.org/protobuf v1.35.1 h1:m3LfL6/Ca+fqnjnlqQXNpFPABW1UD7mjh8KO2mKFytA=
+google.golang.org/protobuf v1.35.1/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
diff --git a/hardware-security-module/application-typescript/package.json b/hardware-security-module/application-typescript/package.json
index 9702887a..f4c577fb 100644
--- a/hardware-security-module/application-typescript/package.json
+++ b/hardware-security-module/application-typescript/package.json
@@ -17,8 +17,8 @@
"author": "",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0"
},
"devDependencies": {
"@eslint/js": "^9.3.0",
diff --git a/off_chain_data/application-java/.gitignore b/off_chain_data/application-java/.gitignore
index ebecdaa6..1a24196c 100644
--- a/off_chain_data/application-java/.gitignore
+++ b/off_chain_data/application-java/.gitignore
@@ -10,3 +10,6 @@ build
# Files generated by the application at runtime
checkpoint.json
store.log
+
+# Ignore Maven build output directory
+target
diff --git a/off_chain_data/application-java/app/build.gradle b/off_chain_data/application-java/app/build.gradle
index 68433f18..42f015e4 100644
--- a/off_chain_data/application-java/app/build.gradle
+++ b/off_chain_data/application-java/app/build.gradle
@@ -14,10 +14,12 @@ repositories {
}
dependencies {
- implementation 'org.hyperledger.fabric:fabric-gateway:1.6.0'
- implementation 'org.hyperledger.fabric:fabric-protos:0.3.3'
- compileOnly 'io.grpc:grpc-api:1.68.0'
- runtimeOnly 'io.grpc:grpc-netty-shaded:1.68.0'
+ implementation 'org.hyperledger.fabric:fabric-gateway:1.7.0'
+ implementation platform('com.google.protobuf:protobuf-bom:4.28.2')
+ implementation 'org.hyperledger.fabric:fabric-protos:0.3.4'
+ implementation platform('io.grpc:grpc-bom:1.67.1')
+ compileOnly 'io.grpc:grpc-api'
+ runtimeOnly 'io.grpc:grpc-netty-shaded'
implementation 'com.google.code.gson:gson:2.11.0'
}
diff --git a/off_chain_data/application-java/app/pom.xml b/off_chain_data/application-java/app/pom.xml
new file mode 100644
index 00000000..11c2564d
--- /dev/null
+++ b/off_chain_data/application-java/app/pom.xml
@@ -0,0 +1,101 @@
+
+
+ 4.0.0
+
+ org.hyperledger.fabric.example
+ off-chain-data
+ 1.0-SNAPSHOT
+
+
+ UTF-8
+ 11
+
+
+
+
+
+ com.google.protobuf
+ protobuf-bom
+ 4.28.2
+ pom
+ import
+
+
+ io.grpc
+ grpc-bom
+ 1.67.1
+ pom
+ import
+
+
+
+
+
+
+ org.hyperledger.fabric
+ fabric-gateway
+ 1.7.0
+
+
+ io.grpc
+ grpc-api
+
+
+ io.grpc
+ grpc-netty-shaded
+ runtime
+
+
+ com.google.code.gson
+ gson
+ 2.11.0
+
+
+
+
+
+
+
+
+ maven-clean-plugin
+ 3.4.0
+
+
+
+ maven-resources-plugin
+ 3.3.1
+
+
+ maven-compiler-plugin
+ 3.13.0
+
+
+ maven-surefire-plugin
+ 3.3.0
+
+
+ maven-jar-plugin
+ 3.4.2
+
+
+ maven-install-plugin
+ 3.1.2
+
+
+ maven-deploy-plugin
+ 3.1.2
+
+
+
+ maven-site-plugin
+ 3.12.1
+
+
+ maven-project-info-reports-plugin
+ 3.6.1
+
+
+
+
+
diff --git a/off_chain_data/application-typescript/package.json b/off_chain_data/application-typescript/package.json
index 57baefa6..9b2b2cd7 100644
--- a/off_chain_data/application-typescript/package.json
+++ b/off_chain_data/application-typescript/package.json
@@ -18,9 +18,9 @@
"author": "Hyperledger",
"license": "Apache-2.0",
"dependencies": {
- "@grpc/grpc-js": "^1.11.3",
- "@hyperledger/fabric-gateway": "^1.6.0",
- "@hyperledger/fabric-protos": "^0.3.3"
+ "@grpc/grpc-js": "^1.12.2",
+ "@hyperledger/fabric-gateway": "^1.7.0",
+ "@hyperledger/fabric-protos": "^0.3.4"
},
"devDependencies": {
"@eslint/js": "^9.3.0",