LINUX.ORG.RU

Сообщения sergom

 

Формат MP3 как средство контакта с внеземными цивилизациями

В минувший понедельник 4 февраля агентство NASA направило мощнейший информационный сигнал в виде знаменитой песни The Beatles "Через Вселенную" в цифровом формате МР3 к Полярной звезде со скоростью почти 300 тысяч километров в секунду.

Уже через 5 часов, когда сигнал миновал орбиту последней планеты Солнечной системы и вышел за ее пределы популярный формат сжатия аудио с потерями стал самым растространенным фрматом сжатия аудио данных в Солнечной системе и прилежащем к нему пространстве.

(рус) http://newsru.com/world/08feb2008/pesni.html

(eng) http://www.csmonitor.com/2008/0204/p25s03-stss.html

(думаю в новости это не подходит, поэтому сюда. если я не прав - моды исправте :)

>>>

sergom
()

Обработка JPS/Servlet ошибок движком LINUX.ORG.RU, вернее ее отсутствие

Нажал в неподтвержденных новостях на размещенной только что своей новости на [Правка] и получилслед страничку с ошибкой:

http://www.linux.org.ru/edit.jsp?msgid=2476028
>>>>>>>>>>>>
Not authorized
К сожалению, произошла исключительная ситуация при генерации страницы. Если вы считаете, что она возникла по причине нашей ошибки, пожалуйста сообщите нам о ошибке и условиях ее возникновения. Не забудьте также указать полный URL странички, вызвавшей исключение.
java.lang.IllegalAccessException: Not authorized
at org.apache.jsp.edit_jsp._jspService(edit_jsp.java:58)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:98)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:331)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:329)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:269)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:188)
at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.ja va:738)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFil terChain.java:215)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain .java:188)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java: 213)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java: 174)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:10 8)
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:151)
at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200)
at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:773)
at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:703)
at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:89 5)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:6 89)
at java.lang.Thread.run(Thread.java:595)


http://www.linux.org.ru/

http://www.linux.org.ru/edit.jsp?msgid=2476028";
<<<<<<<<<<<<

Но суть моего обращения не в этой ошибке конкретно. Суть в том, что я за последние 4 года не раз встречал на ЛОРе подобные картины. И каждый раз при виде ява стека мне в голову прходят одни и те же мысли: ну как можно так на яве программировать сайты, что при непредвиденных проблемах пользователи должны видеть его внутренноси. Как и что там называется, как и где лежит, какие технологии при этом используются и т.д. Как-будто это кривая пхп-шная поделка, а не ява сайт.
К тому же просьба прислать отчет об ошибке похожа на албанский вирус который сам не может ничего сделать. Даже емейл отосласть.

В общем мне лично стыдно за наш ЛОР и поэтому при всей его очевидности я все же рискну предложить для вас свободные девелоперы ЛОРа след решение: показывать всем всегда заранее подготовленную старницу ошибки. Фиксированную или интеллектуальную, анализирующую где она произошла и с каким Exception как вам угодно. Например самый простой вариант:

/error.jsp
>>>>>>>>>>>
<%@ page isErrorPage="true" contentType="text/html;charset=utf-8" pageEncoding="UTF-8" session="false" %>
<%@ page import="ru.org.linux.MailErrors" %>
<%
if(exception == null) return;
MailErrors.sendError(exception,application,request);
%>
<html>
<head><title>Произошла непредвиденая ошибка</title></head>
<body><b>Произошла непредвиденая ошибка. Администраторы получили об этом сигнал и если посчитают нужным исправят ее.</b></body>
</html>
<<<<<<<<<<<

При этом и стек показываться не будет и письма уйдут вам с отчетом автоматически.
Чтобы это заработало для всех jsp-шек и сервлетов вашего java web-модуля в его WEB-INF/web.xml нужно добавить:

/WEB-INF/web.xml
>>>>>>>>>>>
<web-app character-encoding='UTF-8'>
<context-param servlet.errorPage='/error.jsp'/>
<error-page error-code='500' location='/error.cgi'/>
.....
</web-app
<<<<<<<<<<<
если нужно могу прислать код ru.org.linux.MailErrors.sendError(exception,application,request)

но он просто отсылает письмо на нужный вам адрес(а) в которое инклюдит стек ошибки явы который вы показываете сейчас пользователю в текст письма
....
StringWriter exceptionStackTrace = new StringWriter();
e.printStackTrace(new PrintWriter(exceptionStackTrace));
exceptionStackTrace......
....
и за одно инклюдит в письмо всё что хранится в application и request все объекты и переменные web-окружения (сессии, CGI,...).

Искренне надеюсь, что вам это поможет сделать ЛОР еще удобнее и главное профессиональнее.

>>>

sergom
()

Итальянский парламент легализовавший mp3 распущен

Как говорят у нас в Одессе: "Вы будете смеяться но.." парламент сегодня распускают. Интересное совпадение.

Президент Италии Джорджо Наполитано вечером во вторник объявит спикерам обеих палат парламента о его роспуске, сообщает РИА "Новости" со ссылкой на официальное сообщение президентского дворца.

Причиной отставки стало то, что итальянский сенат 24 января проголосовал против доверия возглавляемому премьер-министром Романо Проди правительства. Подробности

Перемещено svu из OpenSource

>>> Подробности

sergom
()

RSS подписка на новые темы