File tree Expand file tree Collapse file tree
component-server-parent/component-server/src/main/java/org/talend/sdk/component/server/front Expand file tree Collapse file tree Original file line number Diff line number Diff line change 4242import javax .ws .rs .core .Response ;
4343
4444import org .talend .sdk .component .api .exception .ComponentException ;
45- import org .talend .sdk .component .api .exception .ComponentException .ErrorOrigin ;
4645import org .talend .sdk .component .api .exception .DiscoverSchemaException ;
46+ import org .talend .sdk .component .api .exception .DiscoverSchemaException .HandleErrorWith ;
4747import org .talend .sdk .component .runtime .manager .ComponentManager ;
4848import org .talend .sdk .component .runtime .manager .ContainerComponentRegistry ;
4949import org .talend .sdk .component .runtime .manager .ServiceMeta ;
@@ -224,7 +224,9 @@ private Response onError(final Throwable re) {
224224 : "no error message" );
225225 if (re instanceof final DiscoverSchemaException eSchema ) {
226226 // we send reason to recognize the error on client side
227- final String subCode = eSchema .getPossibleHandleErrorWith ().toString ();
227+ final String subCode = ofNullable (eSchema .getPossibleHandleErrorWith ())
228+ .orElse (HandleErrorWith .EXCEPTION )
229+ .toString ();
228230 throw new WebApplicationException (Response
229231 .status (400 , subCode )
230232 .entity (new ErrorPayload (ErrorDictionary .ACTION_ERROR , subCode , description ))
@@ -243,6 +245,10 @@ private Response onError(final Throwable re) {
243245 }
244246
245247 private static int evaluateStatusCodeForException (final ComponentException eComponent ) {
248+ if (null == eComponent .getErrorOrigin ()) {
249+ return 520 ;
250+ }
251+
246252 return switch (eComponent .getErrorOrigin ()) {
247253 case USER -> 400 ;
248254 case BACKEND -> 456 ;
You can’t perform that action at this time.
0 commit comments