java类javax.websocket.OnError的实例源码

SnakeAnnotation.java 文件源码 项目:apache-tomcat-7.0.73-with-comment 阅读 27 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t) throws Throwable {
    // Most likely cause is a user closing their browser. Check to see if
    // the root cause is EOF and if it is ignore it.
    // Protect against infinite loops.
    int count = 0;
    Throwable root = t;
    while (root.getCause() != null && count < 20) {
        root = root.getCause();
        count ++;
    }
    if (root instanceof EOFException) {
        // Assume this is triggered by the user closing their browser and
        // ignore it.
    } else {
        throw t;
    }
}
SnakeAnnotation.java 文件源码 项目:apache-tomcat-7.0.73-with-comment 阅读 26 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t) throws Throwable {
    // Most likely cause is a user closing their browser. Check to see if
    // the root cause is EOF and if it is ignore it.
    // Protect against infinite loops.
    int count = 0;
    Throwable root = t;
    while (root.getCause() != null && count < 20) {
        root = root.getCause();
        count ++;
    }
    if (root instanceof EOFException) {
        // Assume this is triggered by the user closing their browser and
        // ignore it.
    } else {
        throw t;
    }
}
BasicWebSocketEndpoint.java 文件源码 项目:che 阅读 23 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t, Session session) {
  Optional<String> endpointIdOptional = registry.get(session);

  String combinedEndpointId;
  if (endpointIdOptional.isPresent()) {
    combinedEndpointId = endpointIdOptional.get();

    LOG.debug("Web socket session error");
    LOG.debug("Endpoint: {}", combinedEndpointId);
    LOG.debug("Error: {}", t);
  } else {
    LOG.warn("Web socket session error");
    LOG.debug("Unidentified session");
    LOG.debug("Error: {}", t);
  }
}
EventDriverMetrics.java 文件源码 项目:dropwizard-websockets 阅读 30 收藏 0 点赞 0 评论 0
public EventDriverMetrics(final Class<?> endpointClass, MetricRegistry metrics) {
    final Class<?> klass = endpointClass;
    Metered metered = klass.getAnnotation(Metered.class);
    Timed timed = klass.getAnnotation(Timed.class);
    ExceptionMetered em = klass.getAnnotation(ExceptionMetered.class);
    this.onTextMeter = metered != null
            ? Optional.of(metrics.meter(MetricRegistry.name(metered.name(), klass.getName(), OnMessage.class.getSimpleName())))
            : Optional.empty();
    this.countOpened = metered != null
            ? Optional.of(metrics.counter(MetricRegistry.name(metered.name(), klass.getName(), OPEN_CONNECTIONS)))
            : Optional.empty();
    this.timer = timed != null
            ? Optional.of(metrics.timer(MetricRegistry.name(timed.name(), klass.getName())))
            : Optional.empty();
    this.exceptionMetered = em != null
            ? Optional.of(metrics.meter(MetricRegistry.name(em.name(), klass.getName(), OnError.class.getSimpleName())))
            : Optional.empty();
}
ConnectionRequestEndpoint.java 文件源码 项目:jReto 阅读 20 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable t) {
    LOGGER.log(Level.WARNING, "Error occured {0}", t);

    try {
        this.acceptingSession
                .close(
                        new CloseReason(
                                CloseReason.CloseCodes.CLOSED_ABNORMALLY, 
                                "An exception occured: "+t.toString()
                        )
                );
    } catch (IOException ex) {
        Logger.getLogger(ConnectionAcceptEndpoint.class.getName()).log(Level.SEVERE, null, ex);
    }
}
ConnectionAcceptEndpoint.java 文件源码 项目:jReto 阅读 24 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable t) {
    LOGGER.log(Level.WARNING, "Error occured {0}", t);

    try {
        this.requestingSession
                .close(
                        new CloseReason(
                                CloseReason.CloseCodes.CLOSED_ABNORMALLY, 
                                "An exception occured: "+t.toString()
                        )
                );
    } catch (IOException ex) {
        Logger.getLogger(ConnectionAcceptEndpoint.class.getName()).log(Level.SEVERE, null, ex);
    }
}
JsServerModuleEndPoint.java 文件源码 项目:platypus-js 阅读 25 收藏 0 点赞 0 评论 0
@OnError
public void errorInSession(Session websocketSession, Throwable aError) throws Exception {
    PlatypusServerCore platypusCore = lookupPlaypusServerCore();
    in(platypusCore, websocketSession, (com.eas.server.Session aSession) -> {
        Logger.getLogger(JsServerModuleEndPoint.class.getName()).log(Level.FINE, "WebSocket container OnError {0}.", aSession.getId());
        JSObject errorEvent = Scripts.getSpace().makeObj();
        errorEvent.setMember("message", aError.getMessage());
        errorEvent.setMember("id", websocketSession.getId());
        Logger.getLogger(JsServerModuleEndPoint.class.getName()).log(Level.SEVERE, null, aError);
        platypusCore.executeMethod(moduleName, WS_ON_ERROR, new Object[]{errorEvent}, true, (Object aResult) -> {
            Logger.getLogger(JsServerModuleEndPoint.class.getName()).log(Level.FINE, "{0} method of {1} module called successfully.", new Object[]{WS_ON_ERROR, moduleName});
        }, (Exception ex) -> {
            Logger.getLogger(JsServerModuleEndPoint.class.getName()).log(Level.SEVERE, null, ex);
        });
    });
}
SnakeAnnotation.java 文件源码 项目:class-guard 阅读 30 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t) throws Throwable {
    // Most likely cause is a user closing their browser. Check to see if
    // the root cause is EOF and if it is ignore it.
    // Protect against infinite loops.
    int count = 0;
    Throwable root = t;
    while (root.getCause() != null && count < 20) {
        root = root.getCause();
        count ++;
    }
    if (root instanceof EOFException) {
        // Assume this is triggered by the user closing their browser and
        // ignore it.
    } else {
        throw t;
    }
}
SnakeAnnotation.java 文件源码 项目:apache-tomcat-7.0.57 阅读 29 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t) throws Throwable {
    // Most likely cause is a user closing their browser. Check to see if
    // the root cause is EOF and if it is ignore it.
    // Protect against infinite loops.
    int count = 0;
    Throwable root = t;
    while (root.getCause() != null && count < 20) {
        root = root.getCause();
        count ++;
    }
    if (root instanceof EOFException) {
        // Assume this is triggered by the user closing their browser and
        // ignore it.
    } else {
        throw t;
    }
}
SnakeAnnotation.java 文件源码 项目:apache-tomcat-7.0.57 阅读 29 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t) throws Throwable {
    // Most likely cause is a user closing their browser. Check to see if
    // the root cause is EOF and if it is ignore it.
    // Protect against infinite loops.
    int count = 0;
    Throwable root = t;
    while (root.getCause() != null && count < 20) {
        root = root.getCause();
        count ++;
    }
    if (root instanceof EOFException) {
        // Assume this is triggered by the user closing their browser and
        // ignore it.
    } else {
        throw t;
    }
}
SnakeAnnotation.java 文件源码 项目:tomcat7-eap6-examples 阅读 23 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t) throws Throwable {
    // Most likely cause is a user closing their browser. Check to see if
    // the root cause is EOF and if it is ignore it.
    // Protect against infinite loops.
    int count = 0;
    Throwable root = t;
    while (root.getCause() != null && count < 20) {
        root = root.getCause();
        count ++;
    }
    if (root instanceof EOFException) {
        // Assume this is triggered by the user closing their browser and
        // ignore it.
    } else {
        throw t;
    }
}
AbstractEndpoint.java 文件源码 项目:cito 阅读 35 收藏 0 点赞 0 评论 0
@OnError
@Override
public void onError(Session session, Throwable cause) {
    final String errorId = RandomStringUtils.randomAlphanumeric(8).toUpperCase();
    this.log.warn("WebSocket error. [id={},principle={},errorId={}]", session.getId(), session.getUserPrincipal(), errorId, cause);
    try (QuietClosable c = webSocketContext(this.beanManager).activate(session)) {
        this.errorEvent.select(cito.annotation.OnError.Literal.onError()).fire(cause);
        final Frame errorFrame = Frame.error().body(MediaType.TEXT_PLAIN_TYPE, format("%s [errorId=%s]", cause.getMessage(), errorId)).build();
        session.getBasicRemote().sendObject(errorFrame);
        session.close(new CloseReason(CloseCodes.PROTOCOL_ERROR, format("See server log. [errorId=%s]", errorId)));
    } catch (IOException | EncodeException e) {
        this.log.error("Unable to send error frame! [id={},principle={}]", session.getId(), session.getUserPrincipal(), e);
    }
}
EchoService.java 文件源码 项目:Blog_sample_project 阅读 26 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable t) {
    System.out.println(MessageFormat.format("Find exception {0} for web-socket session {1}.", t.getMessage(), session.getId()));
    if(!session.isOpen()) {
        System.out.println(MessageFormat.format("The web-socket {0} was already closed, now is going to remove the notification listeners.", session.getId()));
    }
}
MCRWebCLIResourceSockets.java 文件源码 项目:mycore 阅读 24 收藏 0 点赞 0 评论 0
@OnError
public void error(Throwable t) {
    if (t instanceof SocketTimeoutException) {
        LOGGER.warn("Socket Session timed out, clossing connection");
    } else {
        LOGGER.error("Error in WebSocket Session", t);
    }
}
MCRProcessingEndpoint.java 文件源码 项目:mycore 阅读 30 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable error) {
    if (error instanceof SocketTimeoutException) {
        this.close(session);
        LOGGER.warn("Websocket error {}: websocket timeout", session.getId());
        return;
    }
    LOGGER.error("Websocket error {}", session.getId(), error);
}
RoomEndpoint.java 文件源码 项目:sample-room-java 阅读 39 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable t) {
    Log.log(Level.FINE, this, "A problem occurred on connection", t);

    // TODO: Careful with what might revealed about implementation details!!
    // We're opting for making debug easy..
    tryToClose(session,
            new CloseReason(CloseReason.CloseCodes.UNEXPECTED_CONDITION,
                    trimReason(t.getClass().getName())));
}
WSServerForIndexPage.java 文件源码 项目:tomcat-8-wffweb-demo-apps 阅读 29 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable throwable) {
    // NOP
    // log only if required
    // if (LOGGER.isLoggable(Level.WARNING)) {
    // LOGGER.log(Level.WARNING, throwable.getMessage());
    // }
}
WebSocketMessenger.java 文件源码 项目:mdw 阅读 27 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable t) {
    if (t instanceof IOException && t.getMessage().startsWith(
            "java.io.IOException: An established connection was aborted")) {
        // avoid nuisance logging when browser closes connection
        if (logger.isMdwDebugEnabled())
            logger.severeException(t.getMessage(), t);
    }
    else {
        logger.severeException(t.getMessage(), t);
    }
}
Application.java 文件源码 项目:real1ty 阅读 33 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable t) {
    if(session!=null){
        sessions.remove(session);
    }
    System.out.println("Websocket connection has broken");
    t.printStackTrace();
}
ServerSideSocketIote2eRequest.java 文件源码 项目:iote2e 阅读 27 收藏 0 点赞 0 评论 0
/**
 * On web socket error.
 *
 * @param cause the cause
 */
@OnError
public void onWebSocketError(Throwable cause) {
    boolean isRemove = ThreadEntryPointIote2eRequest.serverSideSocketIote2eRequest.remove(keyCommon, this);
    logger.info("Socket Error: " + cause.getMessage() + ", isRemove=" + isRemove);
    shutdownThreadIgniteSubscribe();
}
ServerSideSocketNearRealTime.java 文件源码 项目:iote2e 阅读 28 收藏 0 点赞 0 评论 0
/**
 * On web socket error.
 *
 * @param cause the cause
 */
@OnError
public void onWebSocketError(Throwable cause) {
    boolean isRemove = ThreadEntryPointNearRealTime.serverSideSocketNearRealTimes.remove(Iote2eConstants.SOCKET_KEY_NRT, this);
    logger.info("Socket Error: " + cause.getMessage() + ", isRemove=" + isRemove);
    shutdownThreadIgniteSubscribe();
}
StatusEndPoint.java 文件源码 项目:Gobang 阅读 23 收藏 0 点赞 0 评论 0
@OnError
@Override
public void onError(Session session, Throwable throwable) {
    if (throwable == null) {
        return;
    }
    throwable.printStackTrace();
    if (session != null) {
        sessions.remove(session);
    }
}
JKWSClient.java 文件源码 项目:jkool-client-java-api 阅读 31 收藏 0 点赞 0 评论 0
/**
 * Callback hook for Connection error events.
 *
 * @param userSession
 *            the userSession which is opened.
 */
@OnError
public void onError(Session userSession, Throwable ex) {
    if (this.messageHandler != null) {
        this.messageHandler.onError(this, userSession, ex);
    }
}
WSclient.java 文件源码 项目:ws-client 阅读 34 收藏 0 点赞 0 评论 0
@OnError
public void error(Session session, Throwable e) {
    System.out.println(session.getId() + " was error.");
    e.printStackTrace();
    // trayにメッセージを表示。
    tray.displayMessage("エラー", e.getMessage(), TrayIcon.MessageType.ERROR);
    if (session.isOpen()) {
        try {
            session.close();
        } catch (IOException ex) {
        }
    }
}
NotebookServer.java 文件源码 项目:hopsworks 阅读 24 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session conn, Throwable exc) {
  if (impl != null) {
    impl.removeConnectionFromAllNote(conn);
    impl.removeConnectedSockets(conn, notebookServerImplFactory);
  }
}
EndpointDispatcher.java 文件源码 项目:msf4j 阅读 27 收藏 0 点赞 0 评论 0
/**
 * Extract OnError method from the endpoint if exists
 *
 * @param webSocketEndpoint Endpoint to extract method.
 * @return method optional to handle errors.
 */
public Optional<Method> getOnErrorMethod(Object webSocketEndpoint) {
    Method[] methods = webSocketEndpoint.getClass().getMethods();
    Method returnMethod = null;
    for (Method method : methods) {
        if (method.isAnnotationPresent(OnError.class)) {
            returnMethod = method;
        }
    }
    return Optional.ofNullable(returnMethod);
}
OBSStudioClient.java 文件源码 项目:StreamSis 阅读 59 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session session, Throwable thr) {
    if (thr instanceof ConnectException) {
        logger.error("Connection failed.");
        status.set(ConnectionStatus.CONNECTIONERROR);
        return;
    }
    logger.error("Unknown error during connection occurred.", thr);
}
MarketSummaryWebSocket.java 文件源码 项目:sample.daytrader7 阅读 88 收藏 0 点赞 0 评论 0
@OnError
public void onError(Throwable t) {
    if (Log.doTrace()) {
        Log.trace("MarketSummaryWebSocket:onError -- session -->" + currentSession + "<--");
    }
    t.printStackTrace();
}
MediatorEndpoint.java 文件源码 项目:gameon-mediator 阅读 30 收藏 0 点赞 0 评论 0
@OnError
public void onError(@PathParam("userId") String userId, Session session, Throwable t) {
    Log.log(Level.FINER, session, "oops for client " + userId + " connection", t);

    WSUtils.tryToClose(session, new CloseReason(CloseReason.CloseCodes.UNEXPECTED_CONDITION,
            WSUtils.trimReason(t.getClass().getName())));
}
JsClientEndPoint.java 文件源码 项目:platypus-js 阅读 23 收藏 0 点赞 0 评论 0
@OnError
public void onError(Session websocketSession, Throwable aError) {
    if (onerror != null) {
        space.process(context, () -> {
            JSObject errorEvent = Scripts.getSpace().makeObj();
            errorEvent.setMember("message", aError.getMessage());
            onerror.call(session.getPublished(), new Object[]{errorEvent});
        });
    }
}


问题


面经


文章

微信
公众号

扫码关注公众号