Ich versuche, meine Spring-Cloud-Funktion auf AWS Lamdba bereitzustellen, aber es sieht so aus, als ob meine Funktion
dem Funktionskatalog nicht hinzugefügt wird, also gehe ich davon aus, dass etwas mit meiner Bean-Registrierung nicht stimmt, aber nicht herausfinden kann.
@SpringBootApplication
public class TranscribeEventHandlerApplication implements ApplicationContextInitializer {
public static void main(String[] args) {
FunctionalSpringApplication.run(TranscribeEventHandlerApplication.class, args);
}
public Function handle() {
return value -> "OK";
}
@Override
public void initialize(GenericApplicationContext context) {
context.registerBean("handle", FunctionRegistration.class,
() -> new FunctionRegistration(handle())
.type(FunctionType.from(String.class).to(String.class).getType()));
}
}
< /code>
my pom.xml < /pbr />
4.0.0
org.springframework.boot
spring-boot-starter-parent
2.4.7
ai.alabs
transcribe-event-handler
0.0.1-SNAPSHOT
transcribe-event-handler
Demo project for Spring Boot
11
2020.0.3
org.springframework.cloud
spring-cloud-function-adapter-aws
com.amazonaws
aws-lambda-java-core
1.1.0
provided
com.amazonaws
aws-lambda-java-events
2.0.2
org.projectlombok
lombok
true
org.springframework.boot
spring-boot-starter-test
test
org.springframework.cloud
spring-cloud-dependencies
${spring-cloud.version}
pom
import
org.apache.maven.plugins
maven-deploy-plugin
true
org.springframework.boot
spring-boot-maven-plugin
org.springframework.boot.experimental
spring-boot-thin-layout
1.0.17.RELEASE
org.projectlombok
lombok
org.apache.maven.plugins
maven-shade-plugin
false
true
aws
< /code>
lamdba config: < /p>
Laufzeit: Java 11 (Corretto) < /li>
Handler: org. Erhält das Testereignis und der definierte Handler verarbeitet es, findet aber meine Funktion nicht. < /p>
2021-07-07 01:16:12.932 INFO 8 --- [ main] o.s.c.f.adapter.aws.FunctionInvoker : Received: {"version":"0","id":"999cccaa-eaaa-0000-1111-123456789012","detail-type":"Transcribe Job State Change","source":"aws.transcribe","account":"123456789012","time":"2016-12-16T20:57:47Z","region":"us-east-1","resources":[],"detail":{"TranscriptionJobStatus":["COMPLETED"]}}
2021-07-07 01:16:12.962 INFO 8 --- [ main] o.s.c.f.adapter.aws.AWSLambdaUtils : Incoming JSON Event: {"version":"0","id":"999cccaa-eaaa-0000-1111-123456789012","detail-type":"Transcribe Job State Change","source":"aws.transcribe","account":"123456789012","time":"2016-12-16T20:57:47Z","region":"us-east-1","resources":[],"detail":{"TranscriptionJobStatus":["COMPLETED"]}}
2021-07-07 01:16:13.129 INFO 8 --- [ main] o.s.c.f.adapter.aws.AWSLambdaUtils : Incoming request headers: {id=22800a64-d3b5-000e-3be9-48418b185b32, timestamp=1625620572948}
Wenn ich keine Umgebungsvariable festlegt, erhalte ich diesen Fehler nicht, da weder die Route angegeben wurde: "Spring.cloud.Function.Definition" als Nachrichtenheader noch als Anwendungseigenschaft oder 'Spring.cloud.function.Routing-Expression' als Anwendungseigenschaft. SPRING_CLOUD_FUUNTION_ROUTINGEXPRession = Handle Dann erhalte ich diesen Fehler EL1008E: Eigenschaft oder Feld 'Handle' kann nicht auf dem Objekt vom Typ 'org.springFramework.messaging.support.genericMessage' - möglicherweise nicht öffentlich oder nicht gültig oder nicht gültig? SPRING_CLOUD_FUUNCTION_DEFINITION = Handle Dann erhalte ich, dass dieser Fehler die Suchfunktion basierend auf dem Wert von 'Spring.cloud.Function.Definition' Eigenschaft 'Handle'
Ich versuche, meine Spring-Cloud-Funktion auf AWS Lamdba bereitzustellen, aber es sieht so aus, als ob meine Funktion dem Funktionskatalog nicht hinzugefügt wird, also gehe ich davon aus, dass etwas mit meiner Bean-Registrierung nicht stimmt, aber nicht herausfinden kann.[code]@SpringBootApplication public class TranscribeEventHandlerApplication implements ApplicationContextInitializer {
public static void main(String[] args) { FunctionalSpringApplication.run(TranscribeEventHandlerApplication.class, args); }
public Function handle() { return value -> "OK"; }
@Override public void initialize(GenericApplicationContext context) { context.registerBean("handle", FunctionRegistration.class, () -> new FunctionRegistration(handle()) .type(FunctionType.from(String.class).to(String.class).getType())); } } < /code> my pom.xml < /pbr />
Laufzeit: Java 11 (Corretto) < /li> Handler: org. Erhält das Testereignis und der definierte Handler verarbeitet es, findet aber meine Funktion nicht. < /p> 2021-07-07 01:16:12.932 INFO 8 --- [ main] o.s.c.f.adapter.aws.FunctionInvoker : Received: {"version":"0","id":"999cccaa-eaaa-0000-1111-123456789012","detail-type":"Transcribe Job State Change","source":"aws.transcribe","account":"123456789012","time":"2016-12-16T20:57:47Z","region":"us-east-1","resources":[],"detail":{"TranscriptionJobStatus":["COMPLETED"]}} 2021-07-07 01:16:12.962 INFO 8 --- [ main] o.s.c.f.adapter.aws.AWSLambdaUtils : Incoming JSON Event: {"version":"0","id":"999cccaa-eaaa-0000-1111-123456789012","detail-type":"Transcribe Job State Change","source":"aws.transcribe","account":"123456789012","time":"2016-12-16T20:57:47Z","region":"us-east-1","resources":[],"detail":{"TranscriptionJobStatus":["COMPLETED"]}} 2021-07-07 01:16:13.129 INFO 8 --- [ main] o.s.c.f.adapter.aws.AWSLambdaUtils : Incoming request headers: {id=22800a64-d3b5-000e-3be9-48418b185b32, timestamp=1625620572948} [/code] Wenn ich keine Umgebungsvariable festlegt, erhalte ich diesen Fehler nicht, da weder die Route angegeben wurde: "Spring.cloud.Function.Definition" als Nachrichtenheader noch als Anwendungseigenschaft oder 'Spring.cloud.function.Routing-Expression' als Anwendungseigenschaft. SPRING_CLOUD_FUUNTION_ROUTINGEXPRession = Handle Dann erhalte ich diesen Fehler EL1008E: Eigenschaft oder Feld 'Handle' kann nicht auf dem Objekt vom Typ 'org.springFramework.messaging.support.genericMessage' - möglicherweise nicht öffentlich oder nicht gültig oder nicht gültig? SPRING_CLOUD_FUUNCTION_DEFINITION = Handle Dann erhalte ich, dass dieser Fehler die Suchfunktion basierend auf dem Wert von 'Spring.cloud.Function.Definition' Eigenschaft 'Handle'
Ich arbeite an AWS Lambda im Spring Boot-Framework.
Ich habe den Code aus dem folgenden Link verwendet, um Zertifikate aus Dateien zu laden, weil beim Erstellen des PKIX-Pfads ein Fehler aufgetreten...
Ich arbeite an AWS Lambda im Spring Boot-Framework.
Ich habe den Code aus dem folgenden Link verwendet, um Zertifikate aus Dateien zu laden, weil beim Erstellen des PKIX-Pfads ein Fehler aufgetreten...
Ich benutze das Selen, den Chromtreiber und das Chrom, um die Amazon -Website zu verkratzen. Es funktioniert im lokalen System einwandfrei. Aber als ich diesen Ansatz in der Lambda -Folge verwendet...
Regions.getCurrentRegion() gibt null innerhalb einer AWS Lambda-Funktion zurück. Es scheint, dass Regions.getCurrentRegion() innerhalb einer AWS Lambda-Funktion nicht unterstützt wird. Gibt es eine...