Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя,
Дерево процессов
ps axf
Дай скрин
16 ноя 20, 10:54    [22232685]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
PetroNotC Sharp
почему томкэтовский?
потому что вар работает под кошкой
PetroNotC Sharp
Где скачать?
мой сервер,
PetroNotC Sharp
Что внутри?
"обыкновенное сервлетное приложение"
плюс запуск телеграм бота в варианте webhook
16 ноя 20, 11:41    [22232721]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
PetroNotC Sharp
ps axf

всё что связано с java
540 ? Sl 0:09 /usr/lib/jvm/java-14-openjdk-amd64/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start


netstat -lntup | grep "java"

tcp        0      0 127.0.0.1:8009          0.0.0.0:*               LISTEN      540/java            
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 540/java
tcp 0 0 192.168.3.88:8443 0.0.0.0:* LISTEN 540/java
tcp 0 0 127.0.0.1:8005 0.0.0.0:* LISTEN 540/java
вот это и надо остановить
192.168.3.88:8443

после tomcat stop
1799 pts/1 Sl 0:07 /usr/lib/jvm/java-14-openjdk-amd64/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat -Dcatalina.home=/usr/local/tomcat -Djava.io.tmpdir=/usr/local/tomcat/temp org.apache.catalina.startup.Bootstrap start

netstat -lntup | grep "java"
tcp        0      0 192.168.3.88:8443       0.0.0.0:*               LISTEN      1799/java
16 ноя 20, 12:04    [22232751]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя
потому что вар работает под кошкой
я тоже пишу свой вар, но не называю его кошкиным.
вадя
мой сервер,
не понял.
Отвечай на остальные вопросы
16 ноя 20, 12:05    [22232753]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя
всё что связано с java
скрин нужен. Не догадался что табуляцию не видно?
16 ноя 20, 12:09    [22232761]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
И выдели интересующий процесс поток красным
16 ноя 20, 12:10    [22232763]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя
конфликт между старым и новым grizzly-http-server серверами.

У меня было в Glassfish различие версий либы grizzly.
Проверь у себя и замени jar либы.
16 ноя 20, 12:21    [22232770]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
PetroNotC Sharp
скрин нужен. Не догадался что табуляцию не видно?


К сообщению приложен файл. Размер - 72Kb
16 ноя 20, 12:28    [22232777]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя,
Теперь уточни.
- порт 8443 занят если погасить Новый чистый томкат?
16 ноя 20, 12:33    [22232783]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
PetroNotC Sharp
Теперь уточни.
- порт 8443 занят если погасить Новый чистый томкат?
8443 занят именно гризли
если убрать запуск webhook - то он будет свободен
16 ноя 20, 12:48    [22232801]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя
если убрать запуск webhook - то он будет свободен
пиши запуск по шагам
16 ноя 20, 12:54    [22232805]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
есть
public class Filterq implements Filter{


  public void init(FilterConfig filterConfig) {        
        this.filterConfig = filterConfig;
        
        String ss=filterConfig.getServletContext().getRealPath("/")+"WEB-INF/";
   
       org.telegram.Main.main(ss);
 }

}

public class Main {

 try {
            ApiContextInitializer.init();
            
            wh = new WebHook_();

           TelegramBotsApi telegramBotsApi =  new TelegramBotsApi(
                    PATH_TO_CERTIFICATE_STORE,
                    CERTIFICATE_STORE_PASSWORD,
                    "https://xxx.ru:8443",
                    "https://xxx.ru:8443",
                    PATH_TO_CERTIFICATE_PUBLIC_KEY
            );

            telegramBotsApi.registerBot(wh);
           
        } catch (TelegramApiException ex) {
            ex.printStackTrace();
        }

}

вот и все связанное с запуском

ну и обработка от клиентов
public class WebHook_ extends TelegramWebhookBot {

    @Override
    public BotApiMethod onWebhookUpdateReceived(Update update) {
        
        System.out.println("--- " + update.getMessage().getText());
       
        if (update.hasMessage() && update.getMessage().hasText()) {

            SendMessage sendMessage = new SendMessage();

            sendMessage.setChatId(update.getMessage().getChatId().toString());
            sendMessage.setText("Well, all information looks like noise until you break the code.");
            return sendMessage;
        }
        return null;
    }
}
16 ноя 20, 13:05    [22232822]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя
вот и все связанное с запуском
либу пропустил. Или на голом работает?
16 ноя 20, 13:15    [22232838]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
Дай
lsof -i
16 ноя 20, 13:16    [22232844]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
Alexander A. Sak
Member

Откуда: Омск
Сообщений: 1128
вадя
есть
public class Filterq implements Filter{


  public void init(FilterConfig filterConfig) {        
        this.filterConfig = filterConfig;
        
        String ss=filterConfig.getServletContext().getRealPath("/")+"WEB-INF/";
   
       org.telegram.Main.main(ss);
 }

}



А где doFilter() и destroy() ?
16 ноя 20, 13:21    [22232856]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя
всё что связано с java
540 ?

вадя
после tomcat stop
1799

Почему сменился PID процесса
16 ноя 20, 13:26    [22232864]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
PetroNotC Sharp
lsof -i

java      4500       root   47u  IPv4  42901      0t0  TCP *:http-alt (LISTEN)
java 4500 root 52u IPv4 42903 0t0 TCP localhost:8009 (LISTEN)
java 4500 root 65u IPv4 42923 0t0 TCP localhost:8005 (LISTEN)
java 4500 root 114u IPv4 42909 0t0 TCP xxxx.ru:8443 (LISTEN)
java 4500 root 131u IPv4 42917 0t0 TCP xxxx.ru:48172->149.154.167.220:https (ESTABLISHED)




CIDR: 149.154.164.0/22
Название провайдера: Telegram Messenger Network
16 ноя 20, 13:34    [22232876]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
PetroNotC Sharp
Почему сменился PID процесса
разные запуски
16 ноя 20, 13:35    [22232877]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
PetroNotC Sharp
Member

Откуда:
Сообщений: 6525
вадя
TelegramBotsApi telegramBotsApi =  new TelegramBotsApi(

Получается весь вопрос - сделать обратное действие для new.
Если на этой строке вешается на порт что либо.
Так?
Стопить томкат это как бы радикальный метод.
16 ноя 20, 13:37    [22232878]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
Alexander A. Sak
А где doFilter() и destroy() ?


там пока всё что ide вставляет автоматом - в тестовой версии те используется

  @Override
    public void destroy() {        
    }


@Override
    public void doFilter(ServletRequest request, ServletResponse response,
            FilterChain chain)
            throws IOException, ServletException {
        
        if (debug) {
            log("Filter:doFilter()");
        }
        
        doBeforeProcessing(request, response);
        
        Throwable problem = null;
        try {
            chain.doFilter(request, response);
        } catch (IOException | ServletException t) {
            // If an exception is thrown somewhere down the filter chain,
            // we still want to execute our after processing, and then
            // rethrow the problem after that.
            problem = t;
            t.printStackTrace();
        }
        
        doAfterProcessing(request, response);

        // If there was a problem, we want to rethrow it if it is
        // a known type, otherwise log it.
        if (problem != null) {
            if (problem instanceof ServletException) {
                throw (ServletException) problem;
            }
            if (problem instanceof IOException) {
                throw (IOException) problem;
            }
            sendProcessingError(problem, response);
        }
    }
16 ноя 20, 13:41    [22232882]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
Alexander A. Sak
Member

Откуда: Омск
Сообщений: 1128
вадя
Alexander A. Sak
А где doFilter() и destroy() ?


там пока всё что ide вставляет автоматом - в тестовой версии те используется

  @Override
    public void destroy() {        
    }



То есть при инициализации фильтра запускаем бота, а при завершении работы фильтра бота не останавливаем.
16 ноя 20, 13:44    [22232888]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
PetroNotC Sharp
Получается весь вопрос - сделать обратное действие для new.
Если на этой строке вешается на порт что либо.
Так?
да

PetroNotC Sharp
Стопить томкат это как бы радикальный метод.
конечно,
но томкат стопится пока только для индикации , что что-то осталось висеть.

проблема в том что этот висяк мешает при деплое новой версии, процесс отладки...
приходится делать killall java
что в продакшене не камильфо
16 ноя 20, 13:46    [22232891]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
вадя
Member

Откуда: Екатеринбург
Сообщений: 18324
Alexander A. Sak
То есть при инициализации фильтра запускаем бота, а при завершении работы фильтра бота не останавливаем.

в этом то и проблема как его остановить...

я пробовал много вариантов (методом научного тыка)
даже после
 );

            telegramBotsApi.registerBot(wh);

единственно что удавалось - остановить бота на стороне telegram
16 ноя 20, 13:50    [22232894]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
Alexander A. Sak
Member

Откуда: Омск
Сообщений: 1128
Джавадоки хотя бы есть к этой библиотеке? Вот это оно: https://github.com/rubenlagus/TelegramBots ?
16 ноя 20, 14:20    [22232927]     Ответить | Цитировать Сообщить модератору
 Re: telegram webhook  [new]
Alexander A. Sak
Member

Откуда: Омск
Сообщений: 1128
Вообще все это мазохизмом каким-то отдает. Зачем какие-то гризли, либы, кони, люди? Один раз регистрируешь свой эндпойнт (https://core.telegram.org/bots/api#setwebhook) и обрабатываешь входящие запросы.
16 ноя 20, 14:30    [22232939]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: Ctrl  назад   1 [2] 3 4   вперед  Ctrl      все
Все форумы / Java Ответить