Создайте фиктивный класс, он нужен вам для создания экземпляра логгера:
public class JspLoggerClass {}
Импортируйте логгер и класс в ваш jsp:
<%@ page import="org.apache.log4j.Logger, JspLoggerClass;" %>
Создайте и используйте:
<%
Logger logger = Logger.getLogger(JspLoggerClass.class);
...
logger.info("message ...");
%>
РЕДАКТИРОВАНИЕ
Я вас не очень хорошо понимаю.Используя log4j вы можете писать только из кода Java.Что для в JSP вы используете регистратор только в скриптлете.Если вы хотите регистрировать событие click, то есть javascript, поэтому единственным регистратором является console.log ("...") , но он печатается на консоли браузера.Когда вы нажимаете кнопку, нет способа получить событие в jsp скриптлете, этот код выполняется на сервере.Что вы можете сделать, это отправить форму, перейти к сервлету на своем сервере и там зарегистрировать событие.
EDITED 2
OK,по моей вине вы используете 2.3 и это log4j 2 .Поэтому включите в ваш проект / classpath log4j-core и log4j-api jar.Импорт org.apache.logging.log4j.LogManager и org.apache.logging.log4j.Logger .Нет необходимости создавать фиктивный класс, вы можете создать экземпляр регистратора с таким именем строки:
Logger logger = LogManager.getLogger("my jsp");
А теперь просто используйте регистратор:
logger.info("...");
Извините, я не могу оставлять комментарии.
Я думаю, что у вас есть ошибка в log4j.xml , удалите точку до PatternLayout .