diff --git a/metadata/definition/definition.go b/metadata/definition/definition.go
index 11e137a14be574f0607f146def873552ebf1a501..c8dd86b18fe91ec99e4ba0705bac6143d0b44f76 100644
--- a/metadata/definition/definition.go
+++ b/metadata/definition/definition.go
@@ -29,7 +29,7 @@ import (
 	"github.com/apache/dubbo-go/common/constant"
 )
 
-// ServiceDefinition is a interface of service's definition
+// ServiceDefiner is a interface of service's definition
 type ServiceDefiner interface {
 	ToBytes() ([]byte, error)
 }
@@ -42,11 +42,11 @@ type ServiceDefinition struct {
 	Types         []TypeDefinition
 }
 
-func (def ServiceDefinition) ToBytes() ([]byte, error) {
+func (def *ServiceDefinition) ToBytes() ([]byte, error) {
 	return json.Marshal(def)
 }
 
-func (def ServiceDefinition) String() string {
+func (def *ServiceDefinition) String() string {
 	var methodStr strings.Builder
 	for _, m := range def.Methods {
 		var paramType strings.Builder