Результаты поиска
Как обновить страницу на Javascript
Напишите функцию обновления страницы на Javascript или Jquery? Заранее спасибо 
Java lib или приложение для преобразования файла CSV в файл XML?
Существует ли существующее приложение или библиотека в Java , которое позволит мне конвертировать файл CSV данных в файл XML ?
Теги XML будут предоставляться, возможно, через первую строку, содержащую заголовки столбцов.
Как получить доступ к свойствам объекта из метода объекта?
Каков "purist" или "correct" способ доступа к свойствам объекта из метода объекта, который не является методом getter/setter?
Я знаю, что снаружи объекта вы должны использовать getter/setter,, но изнутри вы бы просто сделали это:
Java:
String property = this.property;
PHP:
$property = $this->property;
или ты бы так и сделал:
Java:
String property = this.getProperty();
PHP:
$property = $this->getProperty();
Простите меня, если мой Java немного не в порядке, прошел год с тех пор, как я программировал в Java...
EDIT:
Похоже, люди предполагают, что я говорю только о частных или защищенных переменных / свойствах. Когда я узнал ОО, меня научили использовать геттеры/сеттеры для каждого отдельного свойства, даже если оно было общедоступным (и на самом деле мне сказали никогда не делать никакой переменной/свойство общедоступным). Итак, я, возможно, начинаю с ложного предположения с самого начала. Похоже, что люди, отвечающие на этот вопрос, возможно, говорят, что вы должны иметь общественные свойства и что они не нуждаются в геттерах и сеттерах, что противоречит тому, чему меня учили, и тому, о чем я говорил, хотя, возможно, это тоже нужно обсудить. Хотя это, вероятно, хорошая тема для другого вопроса...
В чем смысл предупреждения о безопасности типа в некоторых приведениях Java дженериков?
В чем смысл предупреждения Java ?
Безопасность типов: приведение от объекта к List<Integer> фактически проверяется по списку стираемых типов
Я получаю это предупреждение, когда пытаюсь привести объект к типу с общей информацией, например, в следующем коде:
Object object = getMyList();
List<Integer> list = (List<Integer>) object;
В чем разница между int и целым числом в Java и C#?
Я читал больше Джоэла о программном обеспечении, когда наткнулся на Джоэла Сполски , говорящего что-то о конкретном типе программиста, знающего разницу между int и Integer в Java/C# (объектно-ориентированные языки программирования).
Так в чем же разница?
Как определить, какой из определенных шрифтов был использован на веб-странице?
Предположим, что у меня на странице есть следующее правило CSS:
body {
font-family: Calibri, Trebuchet MS, Helvetica, sans-serif;
}
Как я могу определить, какой из определенных шрифтов был использован в браузере пользователя?
Редактирование для людей, которым интересно, почему я хочу сделать это: шрифт, который я обнаруживаю, содержит глифы, которые не доступны в других шрифтах, и когда у пользователя нет шрифта, я хочу отобразить ссылку с просьбой загрузить этот шрифт, чтобы они могли использовать мое веб-приложение с правильным шрифтом.
В настоящее время я показываю ссылку на шрифт загрузки для всех пользователей, я хочу показать это только для людей, у которых не установлен правильный шрифт.
ASP.Net Пользовательская Проверка На Стороне Клиента
У меня есть пользовательская функция проверки в JavaScript в пользовательском элементе управления на веб-сайте .Net 2.0, которая проверяет, не превышает ли уплаченная плата причитающуюся сумму.
Я поместил код валидатора в файл ascx , а также попытался использовать Page.ClientScript.RegisterClientScriptBlock() и в обоих случаях срабатывает проверка, но не могу найти функцию JavaScript.
Вывод в консоли ошибок Firefox - это "feeAmountCheck is not defined" . Вот эта функция (она была взята непосредственно из firefox - >view source)
<script type="text/javascript">
function feeAmountCheck(source, arguments)
{
var amountDue = document.getElementById('ctl00_footerContentHolder_Fees1_FeeDue');
var amountPaid = document.getElementById('ctl00_footerContentHolder_Fees1_FeePaid');
if (amountDue.value > 0 && amountDue >= amountPaid)
{
arguments.IsValid = true;
}
else
{
arguments.IsValid = false;
}
return arguments;
}
</script>
Есть идеи, почему эта функция не найдена? Как я могу исправить это, не добавляя функцию на главную страницу или страницу потребления?
Тройные Кавычки? Как я могу разграничить строковый параметр databound Javascript в ASP.NET?
Как я могу разграничить строковый параметр Javascript с привязкой к данным в событии anchor OnClick ?
- У меня есть тег anchor в элементе управления ретранслятором ASP.NET.
- Событие
OnClickanchor содержит вызов функции Javascript. - Функция Javascript принимает строку в качестве входного параметра.
- Строковый параметр заполняется привязанным к данным значением из ретранслятора.
Мне нужен "double quotes" для Container.DataItem .
Мне нужен 'single quotes' для OnClick .
А мне еще нужен один разделитель (тройные кавычки?) для входного строкового параметра вызова функции Javascript.
Поскольку я не могу использовать 'single quotes' снова, как я могу гарантировать, что функция Javascript знает, что входной параметр является строкой, а не целым числом?
Без дополнительных кавычек вокруг входного строкового параметра функция Javascript думает, что я передаю целое число.
В anchor:
<a id="aShowHide" onclick='ToggleDisplay(<%# DataBinder.Eval(Container.DataItem, "JobCode") %>);' >Show/Hide</a>
а вот и Javascript-й:
<script language="JavaScript" type="text/javascript">
/* Shows/Hides the Jobs Div */
function ToggleDisplay(jobCode)
{
/* Each div has its ID set dynamically ('d' plus the JobCode) */
var elem = document.getElementById('d' + jobCode);
if (elem)
{
if (elem.style.display != 'block')
{
elem.style.display = 'block';
elem.style.visibility = 'visible';
}
else
{
elem.style.display = 'none';
elem.style.visibility = 'hidden';
}
}
}
</script>
Как начать писать инструмент покрытия кода?
Поиск книг или других ссылок, в которых обсуждается, как на самом деле написать инструмент покрытия кода в Java; некоторые из различных методов или трюков - исходный код против инструментария байтового кода.
Это для скриптового языка, который генерирует байтовый код Java под капотом.
Http Auth в букмарклете Firefox 3
Я пытаюсь создать букмарклет для размещения закладок del.icio.us в отдельном аккаунте.
Я проверил его из командной строки, как:
wget -O - --no-check-certificate \
"https://seconduser:thepassword@api.del.icio.us/v1/posts/add?url=http://seet.dk&description=test"
Это прекрасно работает.
Затем я хотел создать букмарклет в моем firefox. Я погуглил и нашел кусочки и куски, и в итоге получил:
javascript:void(
open('https://seconduser:password@api.del.icio.us/v1/posts/add?url='
+encodeURIComponent(location.href)
+'&description='+encodeURIComponent(document.title),
'delicious','toolbar=no,width=500,height=250'
)
);
Но все, что происходит, это то, что я получаю это от del.icio.us:
<?xml version="1.0" standalone="yes"?>
<result code="access denied" />
<!-- fe04.api.del.ac4.yahoo.net uncompressed/chunked Thu Aug 7 02:02:54 PDT 2008 -->
Если я затем перейду в адресную строку и нажму enter, она изменится на:
<?xml version='1.0' standalone='yes'?>
<result code="done" />
<!-- fe02.api.del.ac4.yahoo.net uncompressed/chunked Thu Aug 7 02:07:45 PDT 2008 -->
Есть идеи, как заставить его работать непосредственно из закладок?
Как я могу Java запуске приложений несколько, зависимости, собственные библиотеки?
Пример: у меня есть два общих объекта (то же самое должно применяться.файл DLL.) Первый общий объект из сторонней библиотеки, мы будем называть его libA.so. Я завернул некоторые из них с JNI и создал свою собственную библиотеку, libB.so. Теперь libB зависит от libA.
При запуске обе библиотеки находятся в некоторой рабочей области webstart. Мой код java пытается загрузить libB. В этот момент системный загрузчик попытается загрузить libA, который не находится в пути к системной библиотеке (java.library.path не поможет этому). Конечным результатом является то, что libB имеет неудовлетворенную ссылку и не может быть использован.
Я пробовал загружать libA до libB, но это все еще не работает. Кажется, OS хочет сделать эту загрузку для меня. Есть ли способ сделать эту работу, кроме статической компиляции?
Как клавиатура вниз или вверх между выпадающим "options"?
У меня есть специально построенный динамический выпадающий список на основе ajax [div].
У меня есть поле [input], которое; onkeyup, запускает поиск Ajax, который возвращает результаты в div s и возвращается в использование innerHTML . Эти div s все имеют основные моменты onmouseover так, типичный успешный поиск дает следующую структуру (простите полу-код):
[input]
[div id=results] //this gets overwritten contantly by my AJAX function
[div id=result1 onmouseover=highlight onclick=input.value=result1]
[div id=result2 onmouseover=highlight onclick=input.value=result2]
[div id=result2 onmouseover=highlight onclick=input.value=result2]
[/div]
Это работает.
Однако мне не хватает важных функций за регулярными элементами HTML. Я не могу клавиатуру вниз или вверх между "options".
Я знаю, что javascript обрабатывает события клавиатуры, но; я не смог найти хорошего гида. (Конечно, последующий вопрос будет заключаться в следующем: могу ли я использовать <ENTER> для запуска этого события onclick ?)
Это действительно расширение против автобоксинга?
Я видел это в ответе на другой вопрос, в отношении недостатков спецификации Java:
Есть еще недостатки и это тонкая тема. Проверить это:
public class methodOverloading{ public static void hello(Integer x){ System.out.println("Integer"); } public static void hello(long x){ System.out.println("long"); } public static void main(String[] args){ int i = 5; hello(i); } }Здесь "long" будет напечатан (не проверял его сам), потому что компилятор выбирает расширение вместо автоматического бокса. Будьте осторожны при использовании автоматического бокса или не используйте его вообще!
Уверены ли мы, что это на самом деле пример расширения вместо автобоксинга, или это что-то совсем другое?
На моем первоначальном сканировании я бы согласился с утверждением, что выход будет "long" на основе i , объявленного как примитив, а не объект. Однако, если вы изменились
hello(long x)
к
hello(Long x)
вывод будет печатать "Integer"
Что здесь на самом деле происходит? Я ничего не знаю о компиляторах/интерпретаторах байт-кода для java...
Перенос списков в столбцы
Я использую ColdFusion для заполнения шаблона, который включает в себя HTML списков ( <ul>'s).
Большинство из них не так уж и длинны, но некоторые имеют смехотворно длинные длины и действительно могут стоять в колонках 2-3.
Есть ли HTML, ColdFusion или, возможно, JavaScript (у меня есть jQuery` в наличии) способ сделать это легко? Это не стоит какого-то сверхсложного тяжеловесного решения, чтобы сэкономить немного прокрутки.
Как настроить переключатель CSS
Я работаю над сайтом, который будет переключаться на новый стиль на определенную дату. Сайт построен в семантических HTML и CSS, поэтому изменение должно просто потребовать изменения ссылки CSS. Я работаю с дизайнером, которому нужно будет видеть, как он выглядит, а также с клиентом, которому нужно будет просматривать обновления контента в текущем виде, а также прогресс дизайна в новом виде.
Я планирую использовать значение magic querystring и / или ссылку javascript в нижнем колонтитуле, которая записывает cookie для выбора новой страницы CSS. Мы работаем в ASP.NET 3.5. Есть рекомендации?
Я должен упомянуть, что мы используем условные комментарии IE для поддержки IE8, 7 и 6. Я могу создать функцию, которая выполняет замену:
<link href="Style/<% GetCssRoot() %>.css" rel="stylesheet" type="text/css" />
<!--[if lte IE 8]>
<link type="text/css" href="Style/<% GetCssRoot() %>-ie8.css" rel="stylesheet" />
<![endif]-->
<!--[if lte IE 7]>
<link type="text/css" href="Style/<% GetCssRoot() %>-ie7.css" rel="stylesheet" />
<![endif]-->
<!--[if lte IE 6]>
<link type="text/css" href="Style/<% GetCssRoot() %>-ie6.css" rel="stylesheet" />
<![endif]-->
Как я могу опубликовать и затем перенаправить на внешний URL из ASP.Net?
ASP.NET серверные элементы управления обратной связью на свою собственную страницу. Это приводит к тому, что вы хотите перенаправить пользователя на внешнюю страницу, но по какой-то причине (например, для аутентификации) должны разместить на этой странице сообщение.
HttpWebRequest отлично работает, если вы не хотите перенаправлять, а JavaScript в некоторых случаях подходит, но может стать сложным, если вам действительно нужен код на стороне сервера,чтобы собрать данные для публикации.
Так как же вы одновременно отправляете сообщение на внешний URL и перенаправляете пользователя на результат из вашего кода ASP.NET codebehind?
Доступ к переменным post с помощью Java Servlets
Что такое Java эквивалент PHP $_POST ? После часа поисков в Интернете я все еще нигде не приблизился.
Длина объекта JavaScript
Если у меня есть объект JavaScript, скажем
var myObject = new Object();
myObject["firstname"] = "Gareth";
myObject["lastname"] = "Simpson";
myObject["age"] = 21;
существует ли встроенный или общепринятый наилучший способ получения длины этого объекта?
Почему я не могу использовать блок try вокруг моего вызова super()?
Итак, в Java первая строка вашего конструктора HAS должна быть вызовом super... будь то неявный вызов super() или явный вызов другого конструктора. Вот что я хочу знать: почему я не могу поставить пробный блок вокруг этого?
Мой конкретный случай заключается в том, что у меня есть макет класса для теста. Конструктора по умолчанию нет, но я хочу, чтобы он упрощал чтение тестов. Я также хочу обернуть исключения, вызванные из конструктора, в RuntimeException.
Итак, то, что я хочу сделать, это эффективно:
public class MyClassMock extends MyClass {
public MyClassMock() {
try {
super(0);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
// Mocked methods
}
Но Java жалуется, что супер-это не первое утверждение.
Мой обходной путь:
public class MyClassMock extends MyClass {
public static MyClassMock construct() {
try {
return new MyClassMock();
} catch (Exception e) {
throw new RuntimeException(e);
}
}
public MyClassMock() throws Exception {
super(0);
}
// Mocked methods
}
Является ли это лучшим обходным путем? Почему Java не позволяет мне сделать первое?
Моя лучшая догадка относительно "why" заключается в том, что Java не хочет, чтобы я имел сконструированный объект в потенциально противоречивом состоянии... однако, делая глумление, я не забочусь об этом. Кажется, я должен быть в состоянии сделать это выше... или, по крайней мере, я знаю, что вышесказанное безопасно для моего случая... или кажется, что так и должно быть в любом случае.
Я переопределяю все методы, которые я использую из тестируемого класса, поэтому нет никакого риска, что я использую неинициализированные переменные.
Как указать javascript для запуска при отображении ModalPopupExtender
У ASP.NET AJAX ModalPopupExtender есть свойства OnCancelScript и OnOkScript , но у него, похоже, нет свойства OnShowScript . Я бы хотел указать функцию javascript для запуска при каждом появлении всплывающего окна.
В прошлых ситуациях я устанавливал TargetControlID на фиктивный элемент управления и предоставлял свой собственный элемент управления, который сначала выполняет некоторый код JS, а затем использует методы JS для отображения всплывающего окна. Но в этом случае я показываю всплывающее окно как из клиентского, так и из серверного кода.
Кто-нибудь знает способ сделать это?
BTW, мне это было нужно, потому что у меня есть textbox в модале, который я хочу сделать редактором TinyMCE. Но сценарий TinyMCE init не работает с невидимыми текстовыми полями, поэтому мне пришлось найти способ запустить его в то время, когда модальный был показан
Есть ли реальная польза от использования J#?
Я только что видел комментарий с предложением J#, и это заставило меня задуматься... существует ли реальное, полезное использование J# вместо Java? Итак, я чувствую, что единственная причина, по которой вы даже подумали бы использовать J#, заключается в том, что руководство постановило, что компания должна прыгнуть на подножку Java... и подножка .NET. Если вы используете J#,, вы фактически теряете самое большое преимущество выбора Java... богатая кросс-платформенная поддержка. Конечно, есть Mono, но это не так богато поддерживается или полнофункционально, верно? Я помню, что слуховые формы не полностью (возможно, вообще) поддерживаются.
Я не пытаюсь bash .NET здесь, я просто говорю, что если вы собираетесь идти по маршруту Microsoft, почему бы просто не использовать C#?, если вы собираетесь идти по маршруту Java, почему бы J# не войти в картину?
Я надеюсь найти здесь несколько реальных случаев, поэтому, пожалуйста, особенно отвечайте, если вы ACTUALLY использовали J# в проекте REAL и почему.
Анимация в javascript, отправная точка
Я понимаю, как JS запускается, и я думаю, что понимаю большую часть DOM, но я понятия не имею об анимации. Кто-нибудь здесь знает хорошего гида, который может объяснить мне, как это делается в Javascript?
Кроме того, должен ли я даже рассматривать Javascript для анимации? Должен ли я вместо этого искать, чтобы узнать flash?
Как создать структуру данных связанного списка в Java?
Как лучше всего сделать связанный список в Java?
Как лучше всего обойти тот факт, что все Java байт подписаны?
В Java нет такого понятия, как беззнаковый байт.
Работая с некоторым низкоуровневым кодом, иногда вам нужно работать с байтами, которые имеют беззнаковые значения больше 128, что заставляет Java интерпретировать их как отрицательное число из-за того, что MSB используется для знака.
Какой хороший способ обойти это? (Говорить не использовать Java-это не вариант)
Как лучше всего обойти тот факт, что все Java байт подписаны?
В Java нет такого понятия, как беззнаковый байт.
Работая с некоторым низкоуровневым кодом, иногда вам нужно работать с байтами, которые имеют беззнаковые значения больше 128, что заставляет Java интерпретировать их как отрицательное число из-за того, что MSB используется для знака.
Какой хороший способ обойти это? (Говорить не использовать Java-это не вариант)
Заставить Java и TWAIN играть вместе приятно
Я работаю над созданием приложения для сканирования непосредственно с TWAIN сканера на Java applet. Я уже знаю о морене и JTwain, но они стоят денег. Мне нужна свобода. Я мог бы заново изобрести колесо с JNI, но похоже, что кто-то уже сделал это как инструмент FOSS.
Кто-нибудь знаком с бесплатным инструментом, который может заставить Java applet читать непосредственно со сканера TWAIN?
Создание PDFs из многостраничных форм в WebObjects
Я хотел бы автоматически генерировать документы PDF из WebObjects на основе многостраничных форм. Предполагая, что у меня есть класс, который может собрать связанные файлы форм (java/wod) есть ли хороший способ затем проанализировать отдельные формы в PDF вместо перехода на экран?
В чем разница между конечной точкой, сервисом и портом при работе с веб-сервисами?
Я использовал Apache CXF, чтобы представить около десяти классов java в качестве веб-служб.
Я создал клиентов, используя CXF, Axis и .NET.
В Axis и CXF генерируется "Service" или "Locator". От этой услуги вы можете получить "Port". "Port" используется для выполнения отдельных вызовов методов, предоставляемых веб-службой.
В .NET "Service" непосредственно предоставляет вызовы веб-службе.
Может ли кто-нибудь объяснить разницу между портом, службой, локатором и конечной точкой, когда речь заходит о веб-службах?
Ось:
PatientServiceImplServiceLocator locator =
new PatientServiceImplServiceLocator();
PatientService service = locator.getPatientServiceImplPort();
CXF:
PatientServiceImplService locator = new PatientServiceImplService();
PatientService service = locator.getPatientServiceImplPort();
.чистый:
PatientServiceImplService service = new PatientServiceImplService();
Как я могу определить IP моего маршрутизатора / шлюза в Java?
Как я могу определить IP моего маршрутизатора / шлюза в Java? Я могу получить свой IP достаточно легко. Я могу получить свой internet IP, используя услугу на веб-сайте. Но как я могу определить IP моего шлюза?
Это довольно легко в .NET, если вы знаете свой путь вокруг. Но как это сделать в Java году?
Вы запутали свой коммерческий код Java?
Интересно, использует ли кто-нибудь коммерческие/бесплатные java обфускаторы на своем собственном коммерческом продукте. Я знаю только об одном проекте, который на самом деле имел запутывающий шаг в шаге сборки ant для релизов.
Вы что-то путаете? И если это так, то почему вы все путаете?
Действительно ли это способ защитить код или это просто лучшее чувство для developers/managers?
edit: хорошо, я буду точен в своей точке зрения: вы запутываете, чтобы защитить свой IP (ваши алгоритмы, работу, которую вы вложили в свой продукт)? Я не буду запутывать по соображениям безопасности, это не кажется правильным. Поэтому я говорю только о защите вашего кода приложений от конкурентов.
@staffan имеет хороший смысл:
Причина, по которой следует держаться подальше от цепного потока кода, заключается в том, что некоторые из этих изменений делают невозможной эффективную оптимизацию кода для JVM. Фактически это приведет к снижению производительности вашего приложения.
Файл конфигурации приложения
Итак, я не хочу начинать здесь священную войну, но мы находимся в процессе консолидации того, как мы обрабатываем файлы конфигурации наших приложений, и мы изо всех сил пытаемся принять решение о наилучшем подходе. На данный момент каждое приложение, которое мы распространяем, использует свои собственные специальные конфигурационные файлы, будь то файлы свойств (ini style), XML или JSON (внутреннее использование только в данный момент!).
Большая часть нашего кода на данный момент является Java, поэтому мы смотрели на Apache Commons Config , но мы обнаружили, что он довольно многословен. Мы также посмотрели на XMLBeans,но похоже, что это очень много обмана. Я также чувствую, что меня подталкивают к формату XML, но мои клиенты и коллеги опасаются попробовать что-то другое. Я могу понять это с точки зрения клиента, все слышали о XML, но в конце концов, не следует ли использовать правильный инструмент для работы?
Какие форматы и библиотеки люди используют в производственных системах в наши дни, пытается ли кто-нибудь еще избежать налога на угловые скобки ?
Edit: действительно должно быть кроссплатформенное решение: Linux, Windows, Solaris и т. д. и выбор библиотеки, используемой для взаимодействия с конфигурационными файлами, так же важен, как и выбор формата.
Как добавить тег pre внутрь кодового тега с jQuery?
Я пытаюсь использовать jQuery для форматирования блоков кода, а именно для добавления тега <pre> внутри тега <code> :
$(document).ready(function() {
$("code").wrapInner("<pre></pre>");
});
Firefox применяет форматирование правильно, но IE помещает весь блок кода в одну строку. Если я добавлю предупреждение
alert($("code").html());
Я вижу, что IE вставил некоторый дополнительный текст в тег pre:
<PRE jQuery1218834632572="null">
Если я перезагружаю страницу, число после jQuery изменяется.
Если я использую wrap() вместо wrapInner(), чтобы обернуть <pre> за пределами тега <code> , то и IE, и Firefox обрабатывают его правильно. Но разве <pre> не должен работать и внутри <code> ?
Я бы предпочел использовать wrapInner() , потому что затем я могу добавить класс CSS к тегу <pre> для обработки всех форматирований, но если я использую wrap() , мне придется поместить форматирование страницы CSS в тег <pre> и форматирование текста/шрифта в тег <code> , или Firefox и IE оба дросселя. Ничего особенного, но я бы хотел, чтобы все было как можно проще.
Кто-нибудь еще сталкивался с этим? Я что-то упустил?
Массивы массивов в Java
Это очень неприятно для меня... Я парень PHP, работающий в Java над проектом JSP. Я знаю, как сделать то, что я пытаюсь через слишком много кода и полное отсутствие изящества.
Я бы предпочел сделать все правильно. Вот такая ситуация:
Я пишу небольшой дисплей, чтобы показать клиентам, в какие дни они могут поливать свои газоны на основе их группы полива (ABCDE) и в какое время года это происходит. Наши сезоны выглядят так: Лето (от 5-1 до 8-31) Spring (от 3-1 до 4-30) Падение (от 9-1 до 10-31) Зима (от 11-1 до 2-28)
Примером может быть:
Если бы я был в группе А, здесь были бы мои разрешенные времена: Зима: только по понедельникам Spring: Вт, Чт, Сб Лето: В Любой День Осень: Вт, Чт, Сб
Если бы я писал это в PHP, я бы использовал такие массивы:
//M=Monday,t=Tuesday,T=Thursday.... etc
$schedule["A"]["Winter"]='M';
$schedule["A"]["Spring"]='tTS';
$schedule["A"]["Summer"]='Any';
$schedule["A"]["Fall"]='tTS';
$schedule["B"]["Winter"]='t';
Я мог бы сделать массивы дней (array ("Tuesday","Thursday","Saturday")) и т. д., Но это не обязательно для того, что я действительно пытаюсь выполнить.
Мне также нужно будет настроить массивы, чтобы определить, в каком сезоне я нахожусь:
$seasons["Summer"]["start"]=0501;
$seasons["Summer"]["end"]=0801;
Может ли кто-нибудь предложить действительно классный способ сделать это? У меня будет сегодняшняя дата и письмо группы. Мне нужно будет выйти из моей функции в день (M) или в ряд дней (tTS), (любой).
Oracle SQL разработчик не реагирует при попытке просмотра таблиц (или предложить Oracle Mac-клиент)
Я просто получаю пляжный мяч весь день (он уже несколько часов ничего не делает). Он не берет CPU, не читает с диска, не использует сеть.
Я использую Java 1.6 на Mac OS X 10.5.4 . Когда-то это работало, теперь даже перезагрузка компьютера не поможет. Монитор активности говорит, что это "(не отвечает)". Единственное, что я могу сделать, это убить этого сосунка.
Когда я пробую процесс я вижу это:
mach_msg_trap 16620
read 831
semaphore_wait_trap 831
Приемлемый ответ, который не исправит это, включал бы url для приличного бесплатного клиента Oracle для Mac.
Редактировать: @Mark Харрисон к сожалению, это происходит каждый раз, когда я запускаю его, это не старая связь. Я хотел бы избежать запуска Windows на моем ноутбуке. Я даю некоторые плагины для моего IDE вихря, но все еще нет решения для меня. @Matthew Schinckel Navicat, похоже, имеет только некоммерческий Oracle product...I нужен коммерческий дружественный (даже если это стоит денег).
Если у вас есть приложение Java, которое потребляет CPU, когда оно ничего не делает, как вы определяете, что оно делает?
Я вызываю поставщика Java API, и на некоторых серверах кажется, что JVM переходит в цикл опроса с низким приоритетом после входа в API (CPU при использовании 100%). То же самое приложение на других серверах не проявляет такого поведения. Это происходит на WebSphere и Tomcat. Окружение сложно настроить, поэтому трудно попытаться сделать что-то вроде профилирования в Eclipse.
Есть ли способ профилировать (или какой-то другой метод проверки) существующее приложение Java, работающее в Tomcat, чтобы узнать, какие методы выполняются, пока оно находится в этом состоянии spinwait? Приложение выполняет только один метод, когда оно попадает в это состояние (метод поставщика). Поставщик не может повторить поведение (конечно).
Обновление:
Используя JConsole, я смог определить, кто бежит и что они делают. Мне потребовалось несколько часов, чтобы понять, почему он это делает. Проблема заключалась в том, что используемый поставщик API jar не соответствовал точно конфигурации базы данных, которую он использовал. Он по умолчанию включал отслеживание и мониторинг производительности на серверах, которые имели небольшое несоответствие в конфигурации. Я использовал другой jar и все хорошо.
Так что спасибо, Джошуа, за твой ответ. JConsole было чрезвычайно легко настроить и использовать для мониторинга существующего приложения.
@Cringe-я немного поэкспериментировал с некоторыми из предложенных вами вариантов. У меня были некоторые проблемы с настройкой JProfiler, это выглядит хорошо (но дорого). В дальнейшем я пошел дальше и добавил плагин Eclipse Profiler, и я буду просматривать различные профилировщики с открытым исходным кодом для сравнения функциональности.
Есть ли "concise" способ сделать пространство имен в JavaScript?
Я часто сталкивался с сайтами, которые помещали все свои JavaScript внутри структуры namespace вдоль линий:
namespaces = { com : { example: { example.com's data} }
Однако безопасная настройка этого по отношению к другим пространствам имен, по-видимому, требует относительно большого количества кода (определенного как > 2 строки). Мне было интересно, знает ли кто-нибудь краткий способ сделать это? Кроме того, есть ли относительно стандартный/последовательный способ структурировать его? Например, присоединяется ли пространство имен com непосредственно к глобальному объекту или оно присоединяется через объект пространства имен?
[Edit: упс, очевидно, {com = { ... } } не достигнет ничего близкого к тому, что я намеревался, благодаря Shog9 за указание на это.]
Как я могу рефакторинг HTML markup из моих файлов свойств?
Недавно я унаследовал интернационализированное и тяжелое для текста веб-приложение Struts 1.1. Многие из файлов JSP выглядят так:
<p>
<bean:message key="alert" />
</p>
и файлы свойств выглядят так:
messages.properties
alert=Please update your <a href="/address.do">address</a> and <a href="/contact.do">contact information</a>.
с соответствующими переводами на N других языках (messages_fr.properties и др.).
Проблемы:
- DRY нарушение -у меня есть N ссылок на мое Struts действие URLs вместо 1, что делает рефакторинг действия URLs подверженным ошибкам.
- Смешанные проблемы -мое приложение markup теперь находится не только в моих файлах JSP, что затрудняет веб-специалисту настройку markup (используя CSS и т. д.).
- Post-translation markup -всякий раз, когда я получаю недавно переведенный текст, я должен решить, что окружить
<a>...</a>markup. Легко для английского языка, но менее так для незнакомых языков.
Я рассмотрел возможность добавления заполнителей в файл сообщений, например:
alert=Please update your {0} and {1}.
но тогда слова "address" и "contact information" каким - то образом должны быть локализованы, обернуты markup и переданы в мой тег сообщения-и я не вижу простого способа сделать это.
Что я могу сделать, чтобы улучшить это?
Прокрутка переполнена DIVs с JavaScript
У меня есть div, который использует overflow:auto, чтобы сохранить содержимое внутри div, когда оно изменяется и перетаскивается по странице. Я использую некоторые ajax для извлечения строк текста с сервера, а затем добавляю их в конец div, поэтому содержимое растет вниз. Каждый раз, когда это происходит, я хотел бы использовать JS-scroll div снизу, чтобы самый последний добавленный контент был виден, подобно тому, как будет работать чат или консоль командной строки.
До сих пор я использовал этот фрагмент кода, чтобы сделать это (я также использую jQuery, следовательно, функцию $() ):
$("#thediv").scrollTop = $("#thediv").scrollHeight;
Однако это дало мне противоречивые результаты. Иногда это работает, иногда нет, и он полностью перестает работать, если пользователь когда-либо изменяет размер div или перемещает панель scroll вручную.
Целевой браузер-это Firefox 3, и он развертывается в контролируемой среде, поэтому ему вообще не нужно работать в IE.
Есть идеи, ребята? Этот вопрос поставил меня в тупик. Спасибо!
Как удалить дочерний узел в HTML с помощью JavaScript?
Есть ли такая функция, как document.getElementById("FirstDiv").clear() ?
Разбор поисковых запросов в Java
Я пытался найти простой способ проанализировать поисковый запрос и преобразовать его в запрос SQL для моего DB.
Я нашел два решения:
- Lucene : мощная поисковая система на основе Java, содержит парсер запросов, но он не очень настраивается, и я мог бы найти способ легко взломать/адаптировать его для создания SQL запросов.
- ANTLR : ветеран текст лексер-парсер. Используется для создания чего угодно-от компиляторов до небоскребов. ANTLR очень легко настраивается, но каждый, кто коснется кода с этого момента, должен будет выучить новый язык...
Есть еще какие-нибудь идеи?
Когда следует разбивать многомодульный проект на отдельные деревья репозитория?
В настоящее время у нас есть проект со стандартным расположением репозитория subversion:
./ствол
.
/филиал
.
/старая карга
Однако, поскольку мы движемся по пути OSGi и модульного проекта, мы закончили с:
./trunk/bundle/main
.
/trunk/bundle/modulea
.
/trunk/bundle/moduleb
./tags/bundle/main-1.0.0
.
/tags/bundle/main-1.0.1
.
/tags/bundle/modulea-1.0.0
'build' все еще довольно монолитен в том, что он строит все модули последовательно, хотя я начинаю задаваться вопросом, следует ли нам рефакторировать сборку/репозиторий на что-то более похожее:
./bundle/main/trunk
.
/bundle/main/tags/main-1.0.0
.
/bundle/main/tags/main-1.0.1
.
/bundle/modulea/trunk
.
/bundle/modulea/tags/modulea-1.0.0
В этом шаблоне я бы представил, что каждый модуль строит себя и хранит свой двоичный файл в репозитории (maven, ivy или другой путь самого репозитория subversion).
Существуют ли руководящие принципы или 'best-practices' над макетами проектов, как только они становятся модульными?
Как получить файл с сервера через SFTP?
Я пытаюсь получить файл с сервера, используя SFTP (в отличие от FTPS), используя Java. Как я могу это сделать?
Как я могу переопределить метод EJB 3 session bean с общим аргументом - если это вообще возможно?
Предположим, у вас есть следующие EJB 3 interfaces/classes:
public interface Repository<E>
{
public void delete(E entity);
}
public abstract class AbstractRepository<E> implements Repository<E>
{
public void delete(E entity){
//...
}
}
public interface FooRepository<Foo>
{
//other methods
}
@Local(FooRepository.class)
@Stateless
public class FooRepositoryImpl extends
AbstractRepository<Foo> implements FooRepository
{
@Override
public void delete(Foo entity){
//do something before deleting the entity
super.delete(entity);
}
//other methods
}
А затем еще один боб, который обращается к Бобу FooRepository :
//...
@EJB
private FooRepository fooRepository;
public void someMethod(Foo foo)
{
fooRepository.delete(foo);
}
//...
Однако метод переопределения никогда не выполняется при вызове метода delete компонента FooRepository . Вместо этого выполняется только реализация метода delete, определенного в AbstractRepository .
Что я делаю неправильно или это просто ограничение Java/EJB 3, что дженерики и наследование еще не играют хорошо вместе ?
Древовидный (против HTML-Based) веб-фреймворк?
Любой, кто пишет на стороне клиента JavaScript, знаком с DOM-древовидной структурой, на которую ссылается Ваш браузер в памяти, сгенерированной из HTML, полученной от сервера. JavaScript может добавлять, удалять и изменять узлы в дереве DOM для внесения изменений в страницу. Я считаю, что очень приятно работать с (Ошибки браузера в сторону), и очень отличается от того, как мой код на стороне сервера должен генерировать страницу в первую очередь.
Мой вопрос: какие серверные фреймворки / языки создают страницу, рассматривая ее как дерево DOM с самого начала-вставляя узлы вместо Эхо-строк? Я думаю, что было бы очень полезно, если бы клиентский и серверный код видели страницу одинаково. Вы, конечно, можете взломать что-то подобное вместе на любом языке веб-сервера, но фреймворк, предназначенный для создания страницы таким образом, может сделать некоторые очень хорошие оптимизации.
Открытый исходный код, будучи широко развернутым и будучи вокруг некоторое время все будет плюсы.
Создание автономных приложений в JavaScript
С увеличением мощности фреймворков JavaScript, таких как YUI, JQuery и Prototype, а также инструментов отладки, таких как Firebug, создание приложения полностью на стороне браузера JavaScript выглядит как отличный способ сделать простые приложения, такие как головоломки и специализированные калькуляторы.
Есть ли у этого какой-то недостаток, кроме раскрытия вашего исходного кода? Как вы должны обращаться с хранилищем данных для такого рода программ?
Правка: да, Gears и cookies можно использовать для локального хранения, но вы не можете легко получить доступ к файлам и другим объектам, которые уже есть у пользователя. Вы также не можете сохранить данные в файл для пользователя без того, чтобы они не вызывали некоторые функции браузера, такие как печать в PDF или сохранение страницы в виде файла.
Что делают методы getUTC* в объекте date?
Что это значит, когда вы получаете или создаете дату в формате UTC в JavaScript?
JNI и Java: ant вызов make или make вызов ant?
Я как раз собираюсь совершить свое первое путешествие в мир JNI (Java Native Interface), чтобы предоставить уведомления об изменении файловой системы от специфичного для платформы кода C/C++ до Java. То есть, если кто-то не предложит какую-то блестящую библиотеку для этого, которую я пропустил.
Будучи новичком в JNI, мне удалось найти много документации на стороне интерфейса и стороне генерации библиотеки, но я не нашел много о создании родной библиотеки.
У меня есть существующая сборка на основе ant для уже существующего источника Java, поэтому я пытаюсь решить, должен ли я получить ant для вызова make для создания библиотеки или лучше всего получить make для вызова ant после создания библиотеки?
Ни один из вариантов не выскакивает как ужасно хороший, но оба кажутся лучше, чем пытаться заставить ant вызвать компилятор для компиляции кода и создания библиотеки напрямую.
Рекомендации по управлению и развертыванию больших приложений JavaScript
Каковы некоторые стандартные методы управления приложением среднего размера JavaScript? Меня беспокоит как скорость загрузки браузера, так и простота и ремонтопригодность разработки.
Наш код JavaScript примерно равен "namespaced" как:
var Client = {
var1: '',
var2: '',
accounts: {
/* 100's of functions and variables */
},
orders: {
/* 100's of functions and variables and subsections */
}
/* etc, etc for a couple hundred kb */
}
На данный момент у нас есть один (распакованный, нескрепленный, хорошо читаемый) файл JavaScript для обработки всей бизнес-логики в веб-приложении. Кроме того, существует jQuery и несколько jQuery расширений. Проблема, с которой мы сталкиваемся, заключается в том, что требуется вечность , чтобы найти что-либо в коде JavaScript, и браузер все еще имеет дюжину файлов для загрузки.
Часто ли у вас есть несколько файлов "source" JavaScript, которые получают "compiled" в один окончательный сжатый файл JavaScript? Есть еще какие-нибудь полезные советы или рекомендации?
Java стандарт кодирования / лучшие практики-соглашение об именовании для меток break / continue
Иногда помеченный разрыв или продолжение может сделать код намного более читаемым.
OUTERLOOP: for ( ;/*stuff*/; ) {
//...lots of code
if ( isEnough() ) break OUTERLOOP;
//...more code
}
Мне было интересно, какова общая конвенция для этикеток. Все шапки? первая шапка?
Скрытые возможности Java
После прочтения скрытых функций C# я задался вопросом, каковы некоторые из скрытых функций Java?
Можно ли вообще отключить проверку на стороне клиента для текстового поля dojo дата?
В моем примере ниже я использую dijit.form.DateTextBox :
<input type="text" name="startDate" dojoType="dijit.form.DateTextBox" constraints="{datePattern:'MM/dd/yyyy'}" value='<c:out value="${sessionScope.adminMessageForm.startDate}"/>' />
Так, например, если пользователь начинает вводить "asdf" в дату, поле становится желтым, и появляется всплывающее сообщение об ошибке с надписью The value entered is not valid. . Даже если я удалю constraints="{datePattern:'MM/dd/yyyy'}" , он все равно будет проверяться.
Не вдаваясь в детали относительно того, почему, я хотел бы иметь возможность сохранить dojoType и все же предотвратить проверку в определенных обстоятельствах.
Вы действительно можете построить быстрый текстовый процессор с шаблонами дизайна GoF?
Шаблоны дизайна Банды Четырех используют текстовый процессор в качестве примера по крайней мере для нескольких своих шаблонов, особенно композитных и Flyweight.
Помимо использования C или C++, можно ли действительно использовать эти шаблоны и объектно-ориентированные накладные расходы, которые они влекут за собой, чтобы написать высокопроизводительный полнофункциональный текстовый процессор?
Я знаю, что Eclipse написано в Java, но я не использовал его много, поэтому я не знаю, все ли это так быстро или так же отполировано, как что-то вроде Visual Studio, которая имеет систему редактирования текста на основе C++.
Я использовал только C++ и Java в качестве примеров. Этот вопрос больше связан с накладными расходами, связанными с наличием большого количества объектов в памяти, таких как приложение, такое как текстовый процессор или даже игра.
Шаблоны проектирования способствуют абстракции за счет скупости, хотя они обычно указывают, когда вы можете получить какой-то удар по производительности. Текстовые процессоры и особенно игры получают максимальную выгоду от того, чтобы быть как можно ближе к металлу.
Мне просто интересно, знает ли кто-нибудь о быстром объектно-ориентированном текстовом процессоре или текстовом редакторе, который не был написан на C++, и будут ли они строить его с использованием шаблонов или они забудут много абстрагирования вещей?
Как вы начинаете проектировать большую систему?
Мне уже говорили, что я буду единственным разработчиком большой новой системы. Помимо всего прочего, я буду разрабатывать UI и схему базы данных.
Я уверен, что получу некоторые указания, но мне хотелось бы иметь возможность сбить их с ног. Что я могу сделать за это время, чтобы подготовиться, и что мне нужно будет иметь в виду, когда я сяду за свой компьютер со спецификацией?
Несколько вещей, которые нужно иметь в виду: я студент колледжа на моей первой настоящей работе по программированию. Я буду использовать Java. У нас уже есть SCM настроенных с автоматизированным тестированием, etc...so инструментов не проблема.
Хорошие Stripes учебники / примеры?
Компания, в которой я только начал работать, в настоящее время использует Stripes для части своей разработки веб-страниц, и хотя это кажется достаточно хорошим веб-фреймворком, на самом деле его никто не использует-он почти не существует в сети. Он даже не первый в своем поиске google , и результат, который вы получаете, - это его старая домашняя страница.
Итак, кто-нибудь из вас использует Stripes? По собственной воле? Вы знаете какие-нибудь хорошие учебные пособия / примеры?
Поиск конкретного расширения FireFox / программы для разноски форм
Я ищу либо расширение FireFox, либо аналогичную программу,которая позволяет создавать запросы GET и POST. Пользователь будет вводить действие формы и столько пар ключ/значение формы, сколько требуется. Он также будет отправлять любую информацию о файлах cookie (или отправлять текущие файлы cookie из любого домена, выбранного пользователем.) Надстройка веб-разработчика-это почти то, что я ищу; она позволяет вам быстро увидеть ключи формы, но она не позволяет вам изменять их или добавлять новые (что приводит к большому количеству болезненных JavaScript в адресной строке...)
Как лучше всего проверить файл XML на соответствие файлу XSD?
Я создаю некоторые файлы xml, которые должны соответствовать файлу xsd, который был мне дан. Как лучше всего проверить их соответствие?
Минимизировать javascript HTTP вызовов из AjaxControlToolkit элементов управления?
Мне нравится простота, которую предоставляет инструментарий управления ASP.NET Ajax для разработчиков ASP.NET. Однако я не нашел, что это вообще масштабируемое решение. У меня есть страница с 2 полями ввода даты. Помещая в него элемент управления TextBox и CalendarExtendar для каждого поля даты, я получаю несколько (11, по сути) внешних вызовов Javascript в /ScriptResource.axd?d=xxxx
Есть ли способ контролировать это? Почему это так отстойно? Для чего нужен лучший инструментарий Ajax .NET что может обеспечить равный (или лучший) набор функций, который является более масштабируемым, прямым и полностью настраиваемым? NOT глядя, чтобы изобрести колесо здесь.
Рефакторинг помеченных циклов
После того , как я убедился, что помеченные разрывы/продолжения являются полным "nono" здесь, мне нужна помощь, чтобы удалить метку из моего кода.
У меня есть квадратная матрица и вектор, который имеет одинаковую длину. Вектор уже имеет некоторые значения в нем и в зависимости от значений в матрице вектор изменяется в цикле.
Надеюсь, код-фрагмент в принципе понятен…
vectorLoop:
for( int idx = 0; idx < vectorLength; idx++) {
if( conditionAtVectorPosition( v, idx ) ) continue vectorLoop;
matrixLoop:
for( rowIdx = 0; rowIdx < n; rowIdx++ ) {
if( anotherConditionAtVector( v, rowIdx ) ) continue matrixLoop;
if( conditionAtMatrixRowCol( m, rowIdx, idx ) ) continue vectorLoop;
}
setValueInVector( v, idx );
}
Пожалуйста, убедите меня, что есть более читаемая / лучшая версия без ярлыков.
вставить/заменить тег XML в XmlDocument
У меня есть XmlDocument в java, созданный с помощью парсера Weblogic XmlDocument .
Я хочу заменить содержимое тега в этом XMLDocument своими собственными данными или вставить тег, если его там нет.
<customdata>
<tag1 />
<tag2>mfkdslmlfkm</tag2>
<location />
<tag3 />
</customdata>
Я, например, хочу вставить некоторые URL в тег location:
<location>http://something</location>
но в противном случае оставьте XML как есть.
В настоящее время я использую XMLCursor :
XmlObject xmlobj = XmlObject.Factory.parse(a.getCustomData(), options);
XmlCursor xmlcur = xmlobj.newCursor();
while (xmlcur.hasNextToken()) {
boolean found = false;
if (xmlcur.isStart() && "schema-location".equals(xmlcur.getName().toString())) {
xmlcur.setTextValue("http://replaced");
System.out.println("replaced");
found = true;
} else if (xmlcur.isStart() && "customdata".equals(xmlcur.getName().toString())) {
xmlcur.push();
} else if (xmlcur.isEnddoc()) {
if (!found) {
xmlcur.pop();
xmlcur.toEndToken();
xmlcur.insertElementWithText("schema-location", "http://inserted");
System.out.println("inserted");
}
}
xmlcur.toNextToken();
}
Я попытался найти "quick" xquery способ сделать это, так как XmlDocument имеет метод execQuery , но не нашел его очень легким.
У кого-нибудь есть лучший способ, чем этот? Это кажется немного сложным.
Java+Tomcat, умирающее соединение с базой данных?
У меня есть установка экземпляра tomcat, но соединение с базой данных, которое я настроил в context.xml , продолжает умирать после периодов бездействия.
Когда я проверяю журналы я получаю следующую ошибку:
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Последний пакет успешно полученный с сервера составил 68051 сек тому назад. Последний пакет успешно отправлено на сервер был 68051 секунд назад, что больше, чем настроенное значение сервера 'wait_timeout'. Вы должны рассмотреть возможность истечения срока действия и / или тестирования срок действия соединения перед использованием в вашем приложении, увеличивая сервер настроил значения для таймаутов клиента или с помощью соединителя / J свойство соединения 'autoReconnect=true', чтобы избежать этой проблемы.
Вот конфигурация в context.xml:
<Resource name="dataSourceName"
auth="Container"
type="javax.sql.DataSource"
maxActive="100"
maxIdle="30"
maxWait="10000"
username="username"
password="********"
removeAbandoned = "true"
logAbandoned = "true"
driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/databasename?autoReconnect=true&useEncoding=true&characterEncoding=UTF-8" />
Я использую autoReconnect=true , как говорит ошибка, но соединение продолжает умирать. Я никогда раньше не видел, как это происходит.
Я также проверил, что все подключения к базе данных закрываются должным образом.
Как лучше всего начать работу с OSGI?
Что делает module/service/bit функциональности приложения особенно хорошим кандидатом для модуля OSGi?
Я заинтересован в использовании OSGi в своих приложениях. Мы являемся магазином Java и довольно широко используем Spring, поэтому я склоняюсь к использованию динамических модулей Spring для платформ обслуживания OSGi(tm). Я ищу хороший способ включить немного OSGi в приложение в качестве пробной версии. Кто-нибудь здесь использовал эту или подобную технологию OSGi? Есть ли какие-то подводные камни?
@Nicolas-Спасибо, я это уже видел. Это хороший учебник, но я больше ищу идеи о том, как сделать мой первый "real" OSGi bundle, в отличие от примера Hello World.
@david-Спасибо за ссылку! В идеале, с приложением greenfield, я бы спроектировал все это, чтобы быть динамичным. Однако прямо сейчас я ищу, чтобы ввести его в небольшой фрагмент существующего приложения. Предполагая, что я могу выбрать любую часть приложения, какие факторы следует учитывать, чтобы сделать эту часть лучше или хуже в качестве OSGi морской свинки?
Web App-Тип Панели Мониторинга GUI-Интерфейс
Я ищу, чтобы создать графический интерфейс типа панели мониторинга для веб-приложения. Я ищу, чтобы пользователь мог перетаскивать различные элементы (возможно, кнопки изображений, теги привязки или, возможно, просто divs) в разные (определенные) места и сохранять их настройки (в файле cookie или на сервере). Я работаю с c# в .Чистый рамках 2.0. Я пробовал использовать mootools, но их недавнее обновление оставило их возможности перетаскивания бесполезными для меня. Я ищу немного направления, потому что я знаю, что там есть что-то, что я ищу, поэтому мне не придется строить с нуля.
Спасибо.
Вызов .NET веб-службы (WSE 2/3, WS-Security) из Java
Мне нужно позвонить в веб-сервис, написанный на .NET из Java. Веб-служба реализует стек WS-Security (либо WSE 2, либо WSE 3, это не ясно из имеющейся у меня информации).
Информация, которую я получил от поставщика услуг, включала WSDL, файл policyCache.config, некоторый пример кода C# и пример приложения, которое может успешно вызвать службу.
Это не так полезно, как кажется, потому что не ясно, как я должен использовать эту информацию для написания клиента Java. Если запрос веб-службы не подписан в соответствии с политикой, то он отклоняется службой. Я пытаюсь использовать Apache Axis2 и не могу найти никаких инструкций, как я должен использовать файл policyCahce.config и WSDL для создания клиента.
Есть несколько примеров, которые я нашел в интернете, но во всех случаях авторы примеров имели контроль как над сервисом, так и над клиентом, и поэтому смогли сделать настройки с обеих сторон, чтобы заставить его работать. Я не нахожусь в таком положении.
Кто-нибудь сделал это успешно?
Динамическая Алфавитная Навигация
Я использую ColdFusion , чтобы вернуть результирующий набор из базы данных SQL и превратить его в список.
Мне нужен какой-то способ создать алфавитную навигационную панель для этого списка. У меня есть библиотека ColdFusion и jQuery.
Я ищу, чтобы создать что-то вроде этого:
A | B | C | ...
- A
- A
- B
- B
- B
- C
- D
Где нажатие на одну из букв опускает вас вниз по странице до первого элемента для этой буквы. Не все 26 букв алфавита обязательно используются.
Как я могу развернуть артефакты из сборки Maven в систему выпуска файлов SourceForge?
Я использую SourceForge для некоторых проектов с открытым исходным кодом, и я хочу автоматизировать deployment выпусков в систему выпуска файлов SourceForge. Я использую Maven для своих сборок, и стандартный механизм SFTP deployment, похоже, не работает, если вы не выполняете ручную подготовительную работу. Я наткнулся на некоторые старые сообщения на других форумах, предполагающие, что единственный подход-это написать вагон специально для SourceForge.
У кого-нибудь был недавний опыт с этим?
Связь между Javascript и сервером
Я разрабатывал "Form Builder" в Javascript и подходил к той части, где я буду отправлять спецификацию для формы обратно на сервер для хранения. Построитель поддерживает внутреннюю структуру данных, которая представляет поля, метку, параметры (для select/checkbox/radio), обязательный статус и общий порядок сортировки полей.
Когда я хочу отправить эту структуру обратно на сервер, в каком формате я должен ее передать?
Кроме того, при восстановлении сохраненной на сервере формы обратно в мой Javascript builder, должен ли я загружать данные в том же формате, в котором он их отправил, или я должен перестроить поля, используя функции createField() builder?
Переопределение метода equals vs создание нового метода
Я всегда думал, что это так .equals() метод в java должен быть переопределен, чтобы быть специфичным для созданного класса. Другими словами, искать эквивалентность двух разных экземпляров, а не две ссылки на один и тот же экземпляр. Однако я сталкивался с другими программистами, которые, похоже, считают, что поведение объекта по умолчанию должно быть оставлено в покое и создан новый метод для проверки эквивалентности двух объектов одного класса.
Каковы аргументы за и против переопределения метода equals?
Google Maps API-проблемы с классом GLatLngBounds
У меня возникли некоторые проблемы с Google Maps API . У меня есть массив, который содержит ojbect, который я создал для хранения точек.
Мой массив и класс:
var tPoints = [];
function tPoint(name) {
var id = name;
var points = [];
var pointsCount = 0;
...
this.getHeadPoint = function() { return points[pointsCount-1]; }
}
tPoint содержит массив из GLatLng точек. Я хочу написать функцию для возврата объекта GLatLngBounds, который расширяется от текущих границ карты, чтобы показать все HeadPoints.
Вот что у меня есть до сих пор..
function getBounds() {
var mBound = map.getBounds();
for (var i = 0; i < tPoints.length; i++) {
alert(mBound.getSouthWest().lat() + "," + mBound.getSouthWest().lng());
alert(mBound.getNorthEast().lat() + "," + mBound.getNorthEast().lng());
currPoint = trackMarkers[i].getHeadPoint();
if (!mBound.containsLatLng(currPoint)) {
mBound.extend(currPoint);
}
}
return mBound;
}
Который возвращает эти значения для предупреждения. (Как правило, над US)
"19.64258,NaN"
"52.69636,NaN"
"i=0"
"19.64258,NaN"
"52.69636,-117.20701"
"i=1"
Я не знаю, почему я получаю NaN обратно. Когда я использую границы, чтобы получить уровень масштабирования, я думаю, что значение NaN вызывает map.getBoundsZoomLevel(bounds), чтобы вернуть 0, что неверно. Я использую GLatLngBounds неправильно?
Java и C# совместимость
У меня есть две программы. Один находится в C#, а другой-в Java. Эти программы, скорее всего, всегда будут работать на одной и той же машине.
Как лучше всего было бы позволить им поговорить друг с другом?
Итак, чтобы прояснить проблему:
Это личный проект (поэтому профессиональные/дорогостоящие библиотеки-это не выход). Громкость сообщений невелика, будет примерно 1-2 сообщения в секунду. Сообщения небольшие, несколько примитивных типов должны сделать трюк. Я хотел бы сохранить сложность на низком уровне. Приложение java развертывается как один jar в качестве плагина для другого приложения. Так что чем меньше внешних библиотек мне придется объединить, тем лучше. Я полностью контролирую приложение C#. Как уже было сказано ранее, оба приложения должны выполняться на одном компьютере. Прямо сейчас мое решение было бы использовать сокеты с каким-то форматом csv-like.
Ant в задач бросает StackOverflowException
Я пытаюсь скомпилировать более 100 java классов из разных пакетов с чистого листа каталог (без инкрементных компиляций), использующий следующие задачи ant:
<target name="-main-src-depend">
<depend srcdir="${src.dir}"
destdir="${bin.dir}"
cache="${cache.dir}"
closure="true"/>
</target>
<target name="compile" depends="-main-src-depend"
description="Compiles the project.">
<echo>Compiling</echo>
<javac target="${javac.target}"
source="${javac.source}"
debug="${javac.debug}"
srcdir="${src.dir}"
destdir="${bin.dir}">
<classpath>
<path refid="runtime.classpath"/>
<path refid="compile.classpath"/>
</classpath>
</javac>
</target>
Однако при первом запуске задачи компиляции я всегда получаю StackOverflowException. Если я снова запускаю задачу, компилятор выполняет инкрементную сборку, и все работает нормально. Это нежелательно, так как мы используем CruiseControl для выполнения автоматической ежедневной сборки, и это вызывает ложные сбои сборки.
В качестве решения quick-and-dirty я создал 2 отдельные задачи, компилируя части проекта в каждой. Я действительно не думаю, что это решение будет работать, поскольку в будущем будет добавляться больше классов, и я не хочу добавлять новые задачи компиляции каждый раз, когда мы попадаем в "compile limit".
Как открыть почтовую программу по умолчанию с темой и телом кросс-платформенным способом?
Как открыть почтовую программу по умолчанию с темой и телом кросс-платформенным способом?
К сожалению, это для клиентского приложения, написанного в Java, а не для веб-сайта.
Я бы хотел, чтобы это работало кросс-платформенным способом (что означает Windows и Mac, извините Linux). Я рад выполнить VBScript в Windows или AppleScript в OS X. Но я понятия не имею, что эти скрипты должны содержать. Я хотел бы выполнить программу пользователя по умолчанию, а не просто искать Outlook или что-то еще.
В OS X я попытался выполнить эту команду:
open mailto:?subject=MySubject&body=TheBody
URL экранирование необходимо для замены пробелов на %20 .
Обновлено на Windows, вы должны играть во все виды игр, чтобы заставить start работать правильно. Вот правильное заклинание Java:
class Win32 extends OS {
public void email(String subject, String body) throws Exception {
String cmd = "cmd.exe /c start \"\" \"" + formatMailto(subject, body) + "\"";
Runtime.getRuntime().exec(cmd);
}
}
Будет ли серверная часть JavaScript взлетать? Какая реализация наиболее стабильна?
Кто-нибудь видит, как взлетает сервер JavaScript? Есть несколько реализаций там, но все это кажется немного растянутым (как в, "doing it BECAUSE WE CAN" тип отношения).
Мне любопытно узнать, действительно ли кто-то пишет JavaScript для серверной части и каков их опыт работы с ним на сегодняшний день.
Кроме того, какая реализация обычно считается наиболее стабильной?
Различия между файлами unix и windows
Правильно ли я предполагаю, что единственная разница между "windows files" и "unix files" - это прорыв линии?
У нас есть система, которая была перемещена с машины windows на машину unix, и у нее возникли проблемы с форматом.
Мне нужно автоматизировать перевод между unix/windows, прежде чем файлы будут доставлены в систему в нашем "transportsystem". Вероятно, мне понадобится что-то, чтобы определить текущий формат и что-то, чтобы преобразовать его в другой формат. Если это просто новая строка, то это большая разница, тогда я рассматриваю просто чтение файлов с java.io. Насколько я знаю, они способны справиться и с тем, и с другим с помощью readLine. А затем просто напишите каждую строчку обратно с помощью
while (line = readline)
print(line + NewlineInOtherFormat)
....
Резюме:
Это только разница в текстовых файлах, где UNIX использует однострочный канал (LF) для обозначения новой строки, Windows использует возврат каретки/линейный канал (CRLF), а Mac использует только CR.
на что Себжир подробно отвечает:
OS X использует LF, так же как UNIX - MacOS 9 и ниже использовали CR, хотя
Кроме того, может существовать разница в кодировке символов для национальных символов. Там нет "unix-encoding", но многие linux-варианты используют UTF-8 в качестве кодировки по умолчанию. Mac OS (который также является unix) использует свою собственную кодировку (macroman). Я не уверен, что такое кодировка по умолчанию windows.
В дополнение к различиям в новой строке, метка порядка байтов может вызвать проблемы, если файлы обрабатываются как Unicode на Windows.
Однако другой набор проблем, с которыми вы можете столкнуться, может быть связан с кодировкой символов single/multi-byte. Если вы видите странные неожиданные символы (не в end-of-line), то это может быть причиной. Особенно если вы видите квадратные поля, вопросительные знаки, перевернутые вопросительные знаки, дополнительные символы или неожиданные акцентированные символы.
На unix файлы, которые начинаются с a . они скрыты. На windows это флаг файловой системы, к которому у вас, вероятно, нет легкого доступа. Это может привести к тому, что файлы, которые должны быть скрыты, теперь становятся видимыми на клиентских компьютерах.
Права доступа к файлам различаются между ними. Вы, вероятно, обнаружите, когда вы копируете файлы в систему unix, что файлы теперь принадлежат Пользователю, который сделал копирование и имеет ограниченные права. Вам нужно будет использовать chown/chmod, чтобы убедиться, что правильные пользователи имеют к ним доступ.
Рекомендация для библиотеки проверки формы javascript
Любые рекомендации для библиотеки проверки формы javascript. Я мог бы попробовать свернуть свой собственный (но я не очень хорош в javascript). Необходимо поддерживать проверку обязательных полей, а также желательно регулярное выражение проверки полей.
Как округлить результат целочисленного деления?
Я думаю, в частности, о том, как отображать элементы управления разбиением на страницы, когда используется такой язык, как C# или Java.
Если у меня есть x элементов, которые я хочу отобразить в кусках y на странице, сколько страниц потребуется?
Простой способ обратного переноса кода Java 6 на Java 5?
Мы уже некоторое время разрабатываем приложение на основе windows с использованием Java, но NOW мы хотим сделать Mac-порт и должны отменить код из Java 6 и Java 5. Есть ли простой способ сделать это, а не перекодировать Java 6 конкретный код? Мы хотели бы держать наш код в актуальном состоянии.
Лучший способ проверить наличие поддержки -moz-border-radius
Я хотел, чтобы некоторые из этих изящных закругленных углов были использованы для веб-проекта, над которым я сейчас работаю.
Я думал, что попытаюсь сделать это с помощью javascript, а не CSS, чтобы свести запросы к файлам изображений к минимуму (да, я знаю, что можно объединить все необходимые закругленные угловые формы в одно изображение), и я также хотел иметь возможность изменять цвет фона практически на лету.
Я уже использую jQuery, поэтому я посмотрел на отличный плагин с закругленными углами , и он работал как шарм в каждом браузере, который я пробовал. Будучи разработчиком, однако, я заметил возможность сделать его немного более эффективным. Скрипт уже содержит код для определения того, поддерживает ли текущий браузер webkit скругленных угла (браузеры на основе safari). Если это так, то он использует raw CSS вместо создания слоев divs.
Я подумал, что было бы здорово, если бы такая же проверка могла быть выполнена, чтобы увидеть, поддерживает ли браузер специфические для гекконов свойства -moz-border-radius-* и если да, то использовать их.
Проверка поддержки webkit выглядит следующим образом:
var webkitAvailable = false;
try {
webkitAvailable = (document.defaultView.getComputedStyle(this[0], null)['-webkit-border-radius'] != undefined);
}
catch(err) {}
Это, однако, не сработало для -moz-border-radius , поэтому я начал проверять альтернативы.
Моим запасным решением, конечно,является использование обнаружения браузера, но это далеко не рекомендуемая практика.
Мое лучшее решение пока заключается в следующем.
var mozborderAvailable = false;
try {
var o = jQuery('<div>').css('-moz-border-radius', '1px');
mozborderAvailable = $(o).css('-moz-border-radius-topleft') == '1px';
o = null;
} catch(err) {}
Он основан на теории, что геккон "expands" композит -moz-border-radius к четырем под-свойствам
-moz-border-radius-topleft-moz-border-radius-topright-moz-border-radius-bottomleft-moz-border-radius-bottomright
Есть ли какой-нибудь javascript/CSS гуру, у которого есть лучшее решение?
(Запрос функции для этой страницы находится на http://plugins.jquery.com/node/3619 )
Проверка десятичных чисел в JavaScript - IsNumeric()
Каков самый чистый и эффективный способ проверки десятичных чисел в JavaScript?
Бонусные баллы за:
- Ясность. Раствор должен быть чистым и простым.
- Межплатформенный.
Сценарии тестирования:
01. IsNumeric('-1') => true
02. IsNumeric('-1.5') => true
03. IsNumeric('0') => true
04. IsNumeric('0.42') => true
05. IsNumeric('.42') => true
06. IsNumeric('99,999') => false
07. IsNumeric('0x89f') => false
08. IsNumeric('#abcdef') => false
09. IsNumeric('1.2.3') => false
10. IsNumeric('') => false
11. IsNumeric('blah') => false
Преобразование списка в список
У меня есть список целых чисел, List<Integer> , и я хотел бы преобразовать все целочисленные объекты в строки, таким образом, закончив с новым List<String> .
Естественно, я мог бы создать новый List<String> и пройтись по списку, вызывая String.valueOf() для каждого целого числа, но мне было интересно, есть ли лучший (читай: более автоматический ) способ сделать это?
ярлык для создания карты из списка в groovy?
Я бы хотел немного сортанд для этого:
Map rowToMap(row) {
def rowMap = [:];
row.columns.each{ rowMap[it.name] = it.val }
return rowMap;
}
учитывая то, как обстоят дела с GDK, я бы ожидал, что смогу сделать что - то вроде:
Map rowToMap(row) {
row.columns.collectMap{ [it.name,it.val] }
}
но я ничего не видел в документах... я что-то упустил? или я просто слишком ленив?
Инденторы и декораторы пакетного кода
Кто-нибудь знает хорошего пакетный файл инденторов код или beautifiers?
Специально для PHP, JS и SGML-языков.
Предпочтительно с вариантами относительно стиля.
Что я здесь сделал не так? [Javascript Regex]
Поэтому я пишу регистрационную форму, и мне нужно, чтобы отображаемое имя было только цифрами, буквами и подчеркиваниями.
Посмотрите на мой код и скажите мне, что я делаю неправильно.
<form method="post" action="/" onsubmit="return check_form()">
<input type="text" id="display-name" name="display-name" maxlength="255" />
<input type="submit" />
</form>
<script type="text/javascript">
<!--
var name_regex = /^([a-zA-Z0-9_])+/
function check_form()
{
if (!name_regex.test(document.forms[0].elements[0].value))
{
document.forms[0].elements[0].focus()
alert("Your display name may only contain letters, numbers and underscores")
return false
}
}
-->
</script>
Очевидно, что он был обрезан, чтобы не включать ничего, не связанного с проблемой, но даже этот фрагмент не работает.
Как найти ключи a hash?
Я знаю, что в javascript объекты удваиваются как хэши, но мне не удалось найти встроенную функцию для получения ключей
var h = {a:'b',c:'d'};
Я хочу что-то вроде
var k = h.keys() ; // k = ['a','c'];
Это просто написать функцию самостоятельно, чтобы перебирать элементы и добавлять ключи к массиву, который я возвращаю, но есть ли стандартный более чистый способ сделать это?
Я все время чувствую, что это должно быть простая встроенная функция, которую я пропустил, но я не могу ее найти!
Как я могу украсить код JavaScript с помощью командной строки?
Я пишу пакетный скрипт для того, чтобы украсить код JavaScript. Он должен работать как на Windows , так и на Linux .
Как я могу украсить код JavaScript с помощью инструментов командной строки?
454   9   04:54, 3rd August, 2020
Лучший способ хранения больших объемов данных с помощью J2ME
Я разрабатываю приложение J2ME, которое имеет большой объем данных для хранения на устройстве (в области 1 МБ, но переменной). Я не могу полагаться на файловую систему, поэтому я застрял в системе управления записями (RMS), которая позволяет использовать несколько хранилищ записей, но каждый из них имеет ограниченный размер. Моя начальная целевая платформа, Blackberry, ограничивает каждый из них до 64 КБ.
Мне интересно, приходилось ли кому-то еще решать проблему хранения большого количества данных в RMS и как им это удалось? Я думаю о том, чтобы вычислить размеры записей и разделить один набор данных на несколько хранилищ, если он слишком большой, но это добавляет много сложностей, чтобы сохранить его в целости.
Существует множество различных типов данных, которые хранятся, но только один набор, в частности, превысит предел в 64 КБ.
JavaScript Порядок Загрузки
Я работаю как с amq.js (ActiveMQ), так и с Google Maps . Я загружаю свои скрипты в таком порядке
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<title>AMQ & Maps Demo</title>
<!-- Stylesheet -->
<link rel="stylesheet" type="text/css" href="style.css"></link>
<!-- Google APIs -->
<script type="text/javascript" src="http://www.google.com/jsapi?key=abcdefg"></script>
<!-- Active MQ -->
<script type="text/javascript" src="amq/amq.js"></script>
<script type="text/javascript">amq.uri='amq';</script>
<!-- Application -->
<script type="text/javascript" src="application.js"></script>
</head>
Однако в моем application.js он загружает карты нормально, но я получаю ошибку при попытке подписаться на тему с AMQ. AMQ зависит от прототипа, который консоль ошибок в Firefox говорит, что объект не определен. Я думаю, что у меня есть проблема с использованием объекта amq до завершения загрузки скрипта. Есть ли способ убедиться, что оба скрипта загружаются, прежде чем я использую их в своем application.js?
У Google есть этот приятный вызов функции google.setOnLoadCallback(initialize); , который отлично работает. Я не уверен, что у amq.js есть что-то подобное.
Лучший способ исправить выпадающее меню CSS/JS в IE7, когда страница включает карту Google
У меня есть страница, использующая списки <ul> для навигации (Javascript изменяет стиль для отображения или нет при наведении курсора мыши).
Это работает нормально для меня, за исключением IE6 и IE7, когда у меня есть карта Google на странице.
В этом случае выпадающий список просто не работает. Однако страница продолжает работать в FireFox 2.
Я провел небольшое исследование и обнаружил, что это может быть примером ошибки IE Select Box , но я не уверен, поскольку карта Google, похоже, использует <div>, а не <iframe> .
Кто-нибудь еще сталкивался с проблемой, подобной этой, и если да, то есть ли у них какие-либо рекомендации по наилучшему способу преодоления этой проблемы?
Есть ли причины не использовать JSONP для AJA~X запросов?
Если вы создаете приложение AJA~Xy , есть ли какие-либо недостатки в использовании запросов/ответов JSONP , даже если вы не планируете использовать запросы cross-domain ?
Единственное, что я могу придумать, это то, что есть пара дополнительных байтов для оболочки обратного вызова...
Редактировать:
Я нашел это , что также предполагает security and error handling в качестве потенциальных проблем...
Там нет обработки ошибок.
script injectionлибо работает, либо нет. Если есть ошибка изinjection, она попадет на страницу, и за исключением обработчика ошибок с широким окном (плохо, плохо, очень плохо), вам нужно убедиться, что возвращаемое значение действительно наserver side.
Я не думаю, что error handling -это большая проблема... большинство из нас будет использовать библиотеку для создания JSON ... правильность моего ответа не является проблемой для этого вопроса.
и безопасность:
В интернете есть документы, которые могут помочь, но в качестве беглой проверки я бы проверил реферер в скрипте
server side.
похоже, что это потенциальная проблема с любым типом ответа... конечно, в сфере безопасности нет ничего уникального для JSONP ...?
Код для ответа на вопрос Да / нет в javascript
Я смог найти только функцию confirm() , которая дает кнопки OK / Cancel. Есть ли какой-нибудь способ дать кнопки Да/нет?
База данных с поддержкой i18n для java web-app
Я хотел бы использовать базу данных для хранения пар ключ / значение i18n, чтобы мы могли изменять / перезагружать данные i18n во время выполнения. Кто-нибудь уже сделал это? Или у кого-нибудь есть идея, как это реализовать? Я прочитал несколько тем на эту тему, но я не видел работоспособного решения.
Я специально ссылаюсь на то, что будет работать с тегами jstl, такими как
<fmt:setlocale>
<fmt:bundle>
<fmt:setBundle>
<fmt:message>
Я думаю, что это будет включать расширение ResourceBundle, но когда я попытался это сделать, я столкнулся с проблемами, которые были связаны с тем, как теги jstl получают ресурс bundle.
Каков наилучший способ перейти от Java/C# к C++?
В моем университете большинство моих занятий были в Java. Я также недавно изучил C# (и среду Visual Studio) на летней стажировке. Теперь я беру введение в класс компьютерной графики, и студент-выпускник, обучающий класс, предпочитает использовать C++ для доступа к привязкам OpenGL через GLUT.
Есть ли у кого-нибудь хорошие ресурсы о том, как сделать хороший переход от Java/C# к C++? Очевидно, указатели будут большой проблемой,но любые другие вещи, которые я должен искать? Любые учебники, руководства и т.д. было бы очень полезно!
Спасибо!
Нажмите на изображение, получите координаты
Я знаю, что это можно сделать, и у меня даже есть смутное представление о том, как это сделать, но оно перестает быть смутным.
У меня есть стандартный тег HTML image с изображением в нем, размером 100 на 100 пикселей. Я хочу, чтобы люди могли щелкнуть по изображению и для этого передать X и Y, которые они нажимают, в функцию.
Координаты должны быть относительно изображения сверху и слева.
Заранее благодарю вас за любую помощь.
Как сделать список с флажками в Java Swing?
Каков был бы лучший способ иметь список элементов с checkbox каждый в Java Swing?
I.e. a JList с элементами, которые имеют некоторый текст и A checkbox каждый?
Ruby блоков/Java closures в C
Я пытался понять, как работают блоки Ruby, и для этого я пытался реализовать их в C.
Один из простых способов реализации closures-передать void* в окружающий стек в функцию closure/function, но блоки Ruby также обрабатывают операторы returns и break из области, которая использует блок.
loop do
break i if (i >= 4000)
i *= 2
end
Я думаю, что одно из предложений closures для Java работает так же.
Итак, как бы вы реализовали Ruby-blocks/Java-closures в C?
Как вы внедряете двоичные данные в XML?
У меня есть два приложения, написанные на Java, которые взаимодействуют друг с другом с помощью XML сообщений по сети. Я использую парсер SAX на приемном конце, чтобы получить данные обратно из сообщений. Одним из требований является встраивание двоичных данных в сообщение XML, но SAX это не нравится. Кто-нибудь знает, как это сделать?
UPDATE: я получил это, работая с классом Base64 из библиотеки кодеков apache commons, На случай, если кто-то еще пытается сделать что-то подобное.
Алгоритм для выполнения вычисления RFC в Java
RFC для класса Java-это набор всех методов, которые могут быть вызваны в ответ на сообщение объекту класса или каким-либо методом в классе. RFC = M + R, где M = количество методов в классе. R = общее число других методов, непосредственно вызываемых из M.
Мышление C-это то .класс и J-это то .java файл, из которого нам нужно вычислить RFC.
class J{
a(){}
b(){}
c(){
e1.e();
e1.f();
e1.g();
}
h(){
i.k();
i.j();
}
m(){}
n(){
i.o();
i.p();
i.p();
i.p();
}
}
здесь M=6 и R=9 (Не беспокойтесь о вызове внутри цикла. Это рассматривается как один вызов)
Вычисление M легко. Загрузите C с помощью загрузчика классов и используйте отражение, чтобы получить количество методов.
Вычисление R не является прямым. Нам нужно подсчитать количество вызовов метода из класса. Только первый уровень.
Для вычисления R я должен использовать regex. Обычно формат будет (вызовы без использования . не учитываются)
[variable_name].[method_name]([zero or more parameters]);
или
[variable_name].[method_name]([zero or more parameters])
без точки с запятой, когда возврат вызова напрямую становится параметром для другого метода. или
[variable_name].[method_name]([zero or more parameters]).method2();
это становится двумя вызовами метода
Какие еще шаблоны вызова метода вы можете придумать? Есть ли другой способ, кроме использования RegEx, который может быть использован для вычисления R.
UPDATE:
@McDowell
похоже, что с помощью BCEL я могу упростить весь процесс. Дай мне попробовать.
Лучший способ сохранить упорядоченный список windows (от самого последнего созданного до самого старого)?
Каков наилучший способ управления списком windows (сохраняя их в порядке), чтобы иметь возможность продвигать следующее окно на верхний уровень, когда текущее окно верхнего уровня закрыто.
Это для веб-приложения, поэтому мы используем jQuery Javascript.
Мы обсудили несколько упрощенных решений, таких как использование массива и просто обработка индекса [0] в качестве самого верхнего окна.
Мне интересно, есть ли потенциально более эффективная или полезная альтернатива тому, что мы провели мозговой штурм.
Как округлить результат целочисленного деления?
Я думаю, в частности, о том, как отображать элементы управления разбиением на страницы, когда используется такой язык, как C# или Java.
Если у меня есть x элементов, которые я хочу отобразить в кусках y на странице, сколько страниц потребуется?
Простой способ обратного переноса кода Java 6 на Java 5?
Мы уже некоторое время разрабатываем приложение на основе windows с использованием Java, но NOW мы хотим сделать Mac-порт и должны отменить код из Java 6 и Java 5. Есть ли простой способ сделать это, а не перекодировать Java 6 конкретный код? Мы хотели бы держать наш код в актуальном состоянии.
Лучший способ проверить наличие поддержки -moz-border-radius
Я хотел, чтобы некоторые из этих изящных закругленных углов были использованы для веб-проекта, над которым я сейчас работаю.
Я думал, что попытаюсь сделать это с помощью javascript, а не CSS, чтобы свести запросы к файлам изображений к минимуму (да, я знаю, что можно объединить все необходимые закругленные угловые формы в одно изображение), и я также хотел иметь возможность изменять цвет фона практически на лету.
Я уже использую jQuery, поэтому я посмотрел на отличный плагин с закругленными углами , и он работал как шарм в каждом браузере, который я пробовал. Будучи разработчиком, однако, я заметил возможность сделать его немного более эффективным. Скрипт уже содержит код для определения того, поддерживает ли текущий браузер webkit скругленных угла (браузеры на основе safari). Если это так, то он использует raw CSS вместо создания слоев divs.
Я подумал, что было бы здорово, если бы такая же проверка могла быть выполнена, чтобы увидеть, поддерживает ли браузер специфические для гекконов свойства -moz-border-radius-* и если да, то использовать их.
Проверка поддержки webkit выглядит следующим образом:
var webkitAvailable = false;
try {
webkitAvailable = (document.defaultView.getComputedStyle(this[0], null)['-webkit-border-radius'] != undefined);
}
catch(err) {}
Это, однако, не сработало для -moz-border-radius , поэтому я начал проверять альтернативы.
Моим запасным решением, конечно,является использование обнаружения браузера, но это далеко не рекомендуемая практика.
Мое лучшее решение пока заключается в следующем.
var mozborderAvailable = false;
try {
var o = jQuery('<div>').css('-moz-border-radius', '1px');
mozborderAvailable = $(o).css('-moz-border-radius-topleft') == '1px';
o = null;
} catch(err) {}
Он основан на теории, что геккон "expands" композит -moz-border-radius к четырем под-свойствам
-moz-border-radius-topleft-moz-border-radius-topright-moz-border-radius-bottomleft-moz-border-radius-bottomright
Есть ли какой-нибудь javascript/CSS гуру, у которого есть лучшее решение?
(Запрос функции для этой страницы находится на http://plugins.jquery.com/node/3619 )
Проверка десятичных чисел в JavaScript - IsNumeric()
Каков самый чистый и эффективный способ проверки десятичных чисел в JavaScript?
Бонусные баллы за:
- Ясность. Раствор должен быть чистым и простым.
- Межплатформенный.
Сценарии тестирования:
01. IsNumeric('-1') => true
02. IsNumeric('-1.5') => true
03. IsNumeric('0') => true
04. IsNumeric('0.42') => true
05. IsNumeric('.42') => true
06. IsNumeric('99,999') => false
07. IsNumeric('0x89f') => false
08. IsNumeric('#abcdef') => false
09. IsNumeric('1.2.3') => false
10. IsNumeric('') => false
11. IsNumeric('blah') => false
Макет репозитория для больших проектов Maven
У меня есть большое приложение (~50 модулей), использующее структуру, подобную следующей:
- Приложение
- Коммуникационный модуль
- Модуль цветной связи
- SSN модуль связи
- и т.д. коммуникационный модуль
- Модуль маршрутизатора
- Сервисный модуль
- Модуль обслуживания голосования
- Подмодуль веб-интерфейса для голосования
- Подмодуль сборщика голосов для голосования
- и т.д. для голосования
- Служебный модуль тест
- и т.д. модуль
- Модуль обслуживания голосования
- Коммуникационный модуль
Я хотел бы импортировать приложение в Maven и Subversion. После некоторых исследований я обнаружил, что для этого существуют два практических подхода.
Один из них использует древовидную структуру, как и предыдущий. Недостатком этой структуры является то, что вам нужна тонна настроек/хаков, чтобы заставить многомодульную отчетность хорошо работать с Maven. Еще одним недостатком является то, что в Subversion стандартный подход trunk/tags/branches добавляет еще больше сложности в репозиторий.
Другой подход использует плоскую структуру, где есть только один родительский проект и все модули, подмодули и parts-of-the-submodules являются прямыми дочерними элементами родительского проекта. Этот подход хорошо работает для отчетности и проще в Subversion, однако я чувствую, что теряю немного структуры таким образом.
Какой путь вы бы выбрали в долгосрочной перспективе и почему?
Проект Darkstar Реалистичен?
Проект Darkstar был темой ежемесячной встречи JavaSIG в офисах Google в NYC прошлой ночью. Для тех, кто не знает (вероятно, все), Project Darkstar-это платформа для многопользовательских онлайн-игр, которая пытается позаботиться обо всех "hard stuff." основная идея заключается в том, что вы пишете логику своего игрового сервера таким образом, что все операции разбиваются на крошечные задачи. Вы передаете эти задачи в Project Darkstar framework, который обрабатывает их распределение на определенный узел в кластере, любые проблемы параллелизма и, наконец, сохранение данных.
По-видимому, делать такие вещи-это совсем другая проблема для видеоигр, чем для корпоративных приложений. Джим Уолдо, который читал лекцию, утверждает, что MMO игры имеют отношение DB чтения/записи 50/50,, тогда как корпоративные приложения больше похожи на 90% чтения, 10% записи. Он также утверждает, что большинство существующих MMOs хранят все в памяти exlcusively, и только сбрасывают в DB каждые 6 часов so. Это означает, что если сервер выходит из строя, вы потеряете всю работу с момента последнего дампа DB.
Теперь, сам проект звучит действительно круто,но я не думаю, что индустрия примет его. Во-первых, вы должны написать свой код сервера в Java. Клиентский код может быть написан на чем угодно (Джим утверждает, что ActionScript 3 является самым популярным, а затем C++), но серверный материал должен быть Java. Звучит хорошо для меня, но у меня действительно создается впечатление, что все в игровой индустрии ненавидят Java.
Во-вторых, в отличие от других отраслей, где разработчики предпочитают использовать существующие фреймворки и библиотеки, ребята в игровой индустрии, похоже, любят писать все сами. Мало того, они любят переписывать все для каждой новой игры, которую они производят. Все начинает меняться, когда разработчики используют Havok для физики, Unreal Engine 3 в качестве своей платформы и т. д. но по большей части это выглядит так, как будто все еще является собственностью.
Итак, ребята из проекта Darkstar просто теряют свое время? Может ли общая структура, подобная этой, действительно работать для сложных игр с требуемой производительностью? Даже если это действительно работает, готовы ли игровые компании использовать его?
Оптимизация Виртуальных Машин
Я возился с игрушечным интерпретатором в Java , и я рассматривал возможность написать простой компилятор, который может генерировать байт-код для виртуальной машины Java. Что заставило меня задуматься, сколько оптимизации должно быть сделано компиляторами, которые нацелены на виртуальные машины, такие как JVM и CLI?
Делают ли компиляторы Just In Time (JIT)постоянное сворачивание, оптимизацию глазка и т. д.?
Как я могу использовать шифрование/расшифровку 3DES в Java?
Каждый метод, который я пишу для кодирования строки в Java с использованием 3DES, не может быть расшифрован обратно в исходную строку. Есть ли у кого-нибудь простой фрагмент кода, который может просто кодировать, а затем декодировать строку обратно в исходную строку?
Я знаю, что совершаю очень глупую ошибку где-то в этом коде. Вот с чем я работал до сих пор:
** обратите внимание, что я не возвращаю текст BASE64 из метода encrypt, и я не снимаю кодировку base64 в методе decrypt, потому что я пытался увидеть, не ошибся ли я в части BASE64 головоломки.
public class TripleDESTest {
public static void main(String[] args) {
String text = "kyle boon";
byte[] codedtext = new TripleDESTest().encrypt(text);
String decodedtext = new TripleDESTest().decrypt(codedtext);
System.out.println(codedtext);
System.out.println(decodedtext);
}
public byte[] encrypt(String message) {
try {
final MessageDigest md = MessageDigest.getInstance("md5");
final byte[] digestOfPassword = md.digest("HG58YZ3CR9".getBytes("utf-8"));
final byte[] keyBytes = Arrays.copyOf(digestOfPassword, 24);
for (int j = 0, k = 16; j < 8;)
{
keyBytes[k++] = keyBytes[j++];
}
final SecretKey key = new SecretKeySpec(keyBytes, "DESede");
final IvParameterSpec iv = new IvParameterSpec(new byte[8]);
final Cipher cipher = Cipher.getInstance("DESede/CBC/PKCS5Padding");
cipher.init(Cipher.ENCRYPT_MODE, key, iv);
final byte[] plainTextBytes = message.getBytes("utf-8");
final byte[] cipherText = cipher.doFinal(plainTextBytes);
final String encodedCipherText = new sun.misc.BASE64Encoder().encode(cipherText);
return cipherText;
}
catch (java.security.InvalidAlgorithmParameterException e) { System.out.println("Invalid Algorithm"); }
catch (javax.crypto.NoSuchPaddingException e) { System.out.println("No Such Padding"); }
catch (java.security.NoSuchAlgorithmException e) { System.out.println("No Such Algorithm"); }
catch (java.security.InvalidKeyException e) { System.out.println("Invalid Key"); }
catch (BadPaddingException e) { System.out.println("Invalid Key");}
catch (IllegalBlockSizeException e) { System.out.println("Invalid Key");}
catch (UnsupportedEncodingException e) { System.out.println("Invalid Key");}
return null;
}
public String decrypt(byte[] message) {
try
{
final MessageDigest md = MessageDigest.getInstance("md5");
final byte[] digestOfPassword = md.digest("HG58YZ3CR9".getBytes("utf-8"));
final byte[] keyBytes = Arrays.copyOf(digestOfPassword, 24);
for (int j = 0, k = 16; j < 8;)
{
keyBytes[k++] = keyBytes[j++];
}
final SecretKey key = new SecretKeySpec(keyBytes, "DESede");
final IvParameterSpec iv = new IvParameterSpec(new byte[8]);
final Cipher decipher = Cipher.getInstance("DESede/CBC/PKCS5Padding");
decipher.init(Cipher.DECRYPT_MODE, key, iv);
//final byte[] encData = new sun.misc.BASE64Decoder().decodeBuffer(message);
final byte[] plainText = decipher.doFinal(message);
return plainText.toString();
}
catch (java.security.InvalidAlgorithmParameterException e) { System.out.println("Invalid Algorithm"); }
catch (javax.crypto.NoSuchPaddingException e) { System.out.println("No Such Padding"); }
catch (java.security.NoSuchAlgorithmException e) { System.out.println("No Such Algorithm"); }
catch (java.security.InvalidKeyException e) { System.out.println("Invalid Key"); }
catch (BadPaddingException e) { System.out.println("Invalid Key");}
catch (IllegalBlockSizeException e) { System.out.println("Invalid Key");}
catch (UnsupportedEncodingException e) { System.out.println("Invalid Key");}
catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return null;
}
}
JavaScript профилировщик в IE
Кто-нибудь знает инструмент для профилирования JavaScript в IE?
Список доступных:
- IE8 (только для Интернета Explorer 8)
- JavaScript профилировщик
- YUI!
Выполнение JavaScript из Flex: эта функция javascript опасна?
У меня есть приложение flex, которое нуждается в возможности генерировать и выполнять JavaScript. Когда я говорю это, я имею в виду, что мне нужно выполнить raw JavaScript, который я создаю в своем приложении Flex (а не только существующий метод JavaScript)
В настоящее время я делаю это, раскрывая следующий метод JavaScript:
function doScript(js){ eval(js);}
Затем я могу сделать что-то подобное в Flex (примечание: Я делаю что-то более существенное, чем окно предупреждения в реальном приложении Flex):
ExternalInterface.call("doScript","alert('foo'));
Мой вопрос заключается в том, накладывает ли это какой-либо риск безопасности, я предполагаю, что это не так, поскольку Flex и JasvaScript все работают на стороне клиента...
Есть ли лучший способ сделать это?
Как вы преобразуете двоичные данные в строки и обратно в Java?
У меня есть двоичные данные в файле, которые я могу считывать в массив байтов и обрабатывать без проблем. Теперь мне нужно отправить части данных по сетевому соединению в виде элементов в документе XML. Моя проблема заключается в том, что когда я преобразую данные из массива байтов в строку и обратно в массив байтов, данные повреждаются. Я проверил это на одной машине, чтобы изолировать проблему с преобразованием строки, поэтому теперь я знаю, что она не повреждается парсером XML или сетевым транспортом.
Вот что у меня сейчас есть
byte[] buffer = ...; // read from file
// a few lines that prove I can process the data successfully
String element = new String(buffer);
byte[] newBuffer = element.getBytes();
// a few lines that try to process newBuffer and fail because it is not the same data anymore
Кто-нибудь знает, как конвертировать двоичный код в строку и обратно без потери данных?
Ответил: Спасибо, Сэм. Я чувствую себя полным идиотом. Я получил этот ответ вчера, потому что мой парсер SAX жаловался. По какой-то причине, когда я столкнулся с этой, казалось бы, отдельной проблемой, мне не пришло в голову, что это был новый симптом той же самой проблемы.
EDIT: просто для полноты картины я использовал класс Base64 из пакета кодека Apache Commons Для решения этой проблемы.
Java JPanel перерисовка вопросов
У меня есть приложение Java swing с панелью, которая содержит три JComboBoxe s, которые не рисуют должным образом.
Поля combox просто отображаются в виде стрелки вниз с правой стороны, но без метки текущего выбранного значения.
Поля будут перерисованы правильно, если размер окна будет увеличен или уменьшен хотя бы на один пиксель.
Все мои гуглы указали на вызов revalidate() на JPanel , чтобы исправить это, но это не сработало для меня.
Вызов updateUI() на JPanel изменил его от Всегда отображения неправильно на отображение неправильно половину времени.
Кто-нибудь еще видел это и нашел другой способ заставить перерисовывать поля со списком?
опыт db4o?
В настоящее время я пробую db4o (версия java), и мне очень нравится то, что я вижу. Но я не могу не задаться вопросом, как он работает в реальной живой (web-)среде. Есть ли у кого-нибудь опыт (хороший или плохой), чтобы поделиться им о запуске db4o?
Получить имя приложения из Windows XP вырезать и вставить?
Это немного длинный выстрел, но если кто-то может понять это, вы, ребята, можете...
В Windows XP есть ли метаданные, которые поставляются с действием вырезания и вставки, из которых я могу определить приложение, которое предоставило содержимое буфера обмена?
Бонусный вопрос... если есть такая информация, есть ли способ получить к ней доступ через приложение Java?
Динамическая загрузка файла JavaScript
Как можно надежно и динамически загрузить файл JavaScript? Это будет использоваться для реализации модуля или компонента, который при 'initialized' компонент будет динамически загружать все необходимые сценарии библиотеки JavaScript по требованию.
Клиент, использующий компонент, не обязан загружать все файлы сценариев библиотеки (и вручную вставлять теги <script> на их веб-страницу), реализующие этот компонент - только файл сценария компонента 'main'.
Как сделать это в обычных библиотеках JavaScript (прототип, jQuery и т. д.)? Объединяют ли эти инструменты несколько файлов JavaScript в одну распространяемую версию файла сценария 'build'? Или они делают какую-либо динамическую загрузку вспомогательных скриптов 'library'?
Дополнение к этому вопросу: есть ли способ обработать событие после загрузки динамически включаемого файла JavaScript? Прототип имеет document.observe для событий всего документа. Пример:
document.observe("dom:loaded", function() {
// initially hide all containers for tab content
$$('div.tabcontent').invoke('hide');
});
Каковы доступные события для элемента сценария?
Adobe AIR: обработка объектов JSON с сервера
У меня есть скрипт, который извлекает объекты с удаленного сервера через вызов Ajax. Сервер возвращает объекты в нотации JSON.
Однако, в Adobe AIR, существует ограничение на использование eval() по соображениям безопасности. Поэтому я могу получать ответы с удаленного сервера, но не могу превратить их обратно в объекты JavaScript. Есть ли обходной путь для этой проблемы? Я хотел бы использовать JSON для моих JavaScript объектов, так как он может быть использован почти сразу.
Примечание: Я понимаю последствия безопасности для форсирования проблемы, но я буду делать быструю разработку приложений для конкуренции, поэтому программа будет только быстрым прототипом и не будет использоваться для производственных целей. Тем не менее, было бы здорово, если бы была лучшая альтернатива тому, что я пытаюсь сделать сейчас
Обновление:
Спасибо Тео и jsight за их ответы;
Одна важная вещь, которую я узнал сегодня, заключается в том, что я действительно могу использовать библиотеки ActionScript, используя
<script src="lib/myClasses.swf" type="application/x-shockwave-flash"></script>тег расширен на Adobe AIR. Проверьте ссылку Тео для получения более подробной информации!
Пишете ли вы исключения для конкретных вопросов или общие исключения?
У меня есть код, который дает идентификатор пользователя утилите, которая затем отправляет email этому пользователю.
emailUtil.sendEmail(userId, "foo");
public void sendEmail(String userId, String message) throws MailException {
/* ... logic that could throw a MailException */
}
MailException может быть брошен по ряду причин, проблем с адресом email, проблем с шаблоном почты и т.д.
Мой вопрос заключается в следующем: вы создаете новый тип исключения для каждого из этих исключений, а затем обрабатываете их по отдельности или создаете один MailException, а затем сохраняете что-то в исключении (что-то машиночитаемое, а не текст описания), что позволяет нам делать разные вещи на основе того, что на самом деле произошло.
Edit: как уточнение, исключения не предназначены для журналов, а что-нет, это относится к тому, как код реагирует на них. Чтобы продолжить работу с примером mail, предположим, что когда мы отправляем почту, она может потерпеть неудачу, потому что у вас нет адреса email, или потому что у вас нет действительного адреса email, или она может потерпеть неудачу.. и т.д.
Мой код хотел бы реагировать по-разному на каждую из этих проблем (в основном путем изменения сообщения, возвращенного клиенту, но и фактической логики).
Было бы лучше иметь реализацию исключения для каждой из этих проблем или одно зонтичное исключение, которое имело бы что-то внутреннее (например, перечисление), что позволило бы коду различать, какая проблема была.
Проблемы с запуском приложения Swing с IDEA 8M1
У кого-нибудь еще есть проблемы с запуском Swing приложений из IntelliJ IDEA 8 Milestone 1? Даже самое простое приложение, показывающее пустой JFrame, похоже, разбивает JVM. Я не получаю стек trace или что-то еще, похоже, что сам JVM падает, и Windows показывает мне всплывающее окно, в котором говорится обычное сообщение "This process is no longer responding".
Консольные приложения работают нормально, и мой код Swing отлично работает при запуске из Netbeans или из командной строки. Я запускаю Windows Vista x64 с бета-версией JDK 1.6 Update 10, которая может быть конфигурацией, с которой ребята Jetbrains еще не сталкивались.
Почему я не могу объявить статические методы в интерфейсе?
Тема говорит больше всего - в чем причина того, что статические методы не могут быть объявлены в интерфейсе?
public interface ITest {
public static String test();
}
Приведенный выше код выдает мне следующую ошибку (по крайней мере, в Eclipse): "недопустимый модификатор для метода интерфейса ITest.test(); разрешены только публичные & абстрактные".
Почему Java и Python методы сбора мусора отличаются?
Python использует метод подсчета ссылок для обработки времени жизни объекта. Таким образом, объект, который больше не имеет смысла, будет немедленно уничтожен.
Но в Java GC (сборщик мусора) уничтожает объекты, которые больше не используются в определенное время.
Почему Java выбирает именно эту стратегию и в чем ее польза?
Это лучше, чем подход Python?
XmlHttpRequest возвращаемые значения
Я ищу (возможно) правильный способ возврата данных из XmlHttpRequest . Варианты, которые я вижу, являются:
Обычная HTML . Пусть запрос форматирует данные и возвращает их в удобном формате.
Преимущество: легко потребляется на странице вызова.
Недостаток: очень жесткий, застревает с фиксированной компоновкой.XML . Пусть запрос возвращает XML, отформатируйте его с помощью XSLT на странице вызова.
Преимущество: запрашиваемая услуга легко потребляется другими источниками.
Недостаток: достаточно ли хороша поддержка браузера для XSLT?JSON . Пусть запрос возвращает JSON, потребляет его с помощью javascript, рендерит HTML соответственно.
Преимущество: легче 'OO-ify' javascript делает запрос.
Недостаток: вероятно, не так прост в использовании, как предыдущие два варианта.
Я также думал о том, чтобы перейти к варианту один, абстрагируя логику представления в вызываемом сервисе таким образом, чтобы переключение между различными макетами было бы тривиальным. Лично я считаю, что этот вариант является лучшим из трех, по соображениям совместимости.
Печатая это, я получил еще одно озарение. Было бы неплохо разрешить все три формата ответа на основе параметра, добавленного к запросу?
Использование Regex для генерации строк, а не для их сопоставления
Я пишу утилиту Java, которая помогает мне генерировать множество данных для тестирования производительности. Было бы действительно здорово иметь возможность указать regex для строк, чтобы мой генератор выплевывал вещи, которые соответствуют этому. Есть ли там что-то уже испеченное, что я могу использовать для этого? Или есть библиотека, которая доставляет меня туда большую часть пути?
Спасибо
Как конвертировать изображения между CMYK и RGB в ColdFusion (Java)?
У меня есть потребность конвертировать изображения из CMYK в RGB - не обязательно обратно, но эй, если это можно сделать...
С выпуском ColdFusion 8 мы получили тег CFImage , но он не поддерживает это преобразование; так же как и Image.cfc, или компонент изображения Alagad .
Однако это должно быть возможно в Java; который мы можем использовать через CF. Например, вот как можно создать поток Java для спящего процесса:
<cfset jthread = createObject("java", "java.lang.Thread")/>
<cfset jthread.sleep(5000)/>
Я бы предположил, что подобный метод может быть использован для использования java для преобразования этого изображения, но не будучи разработчиком Java, я не знаю, с чего начать. Может ли кто-нибудь помочь здесь?
Добавление встроенной функции поиска на веб-страницу
Можно ли встроить встроенное окно поиска в веб-страницу, которая обеспечивает аналогичную функциональность для встроенного поиска IE7Pro или аналогичных плагинов для Firefox/Safari?
jQuery AJAX против UpdatePanel
У нас есть страница с тонной jQuery (примерно 2000 строк), которую мы хотим обрезать b/c это кошмар обслуживания, и его может быть проще поддерживать на сервере. Мы подумали о том, чтобы использовать для этого UpdatePanel. Однако нам не нравится тот факт, что UpdatePanel отправляет всю страницу обратно на сервер.
Какой самый лучший макет фреймворка для Java?
Каков наилучший фреймворк для создания макетов объектов в Java? Почему? Каковы плюсы и минусы каждого фреймворка?
Настроить сокет Java на fail-fast при отключении?
У меня есть порт прослушивания на моем сервере, к которому я подключаюсь с помощью класса Java и интерфейса Socket , i.e.
Socket mySocket = new Socket(host,port);
Затем я хватаю OutputStream, украшаю PrintWriter в режиме автозапуска, и я смеюсь - за исключением того, что порт прослушивания закрывается. Тогда я получаю
tcp4 0 0 *.9999 *.* LISTEN
tcp 0 0 127.0.0.1.45737 127.0.0.1.9999 CLOSE_WAIT
и я не могу обнаружить проблему в программе - я попытался использовать метод isConnected() на сокете, но он, похоже, не знает, что соединение закрыто.
Я хочу знать о проблеме в следующий раз, когда я попытаюсь написать в сокет, чтобы я мог попытаться снова подключиться и сообщить о проблеме.
Какие-нибудь советы, пожалуйста?
Спасибо всем
Перетащите Email из MS Outlook в Eclipse RCP
Есть ли у кого-нибудь рабочее решение без некоторых Java/COM-bridge? E.g. обработайте Email как файл (.msg) вместо того, чтобы найти данные, на которые ссылаются в буфере обмена?
Библиотеки для красивых диаграмм в SWT?
Я знаю следующие библиотеки для рисования диаграмм в приложении SWT/Eclipse RCP:
- Eclipse BIRT Chart Engine (ссылки на статью о том, как его использовать)
- JFreeChart
Какие еще библиотеки существуют для рисования красивых диаграмм с SWT? Или графики в Java вообще? В конце концов, вы всегда можете отобразить изображение...
Есть ли какой-то способ показать содержимое HTML внутри Flash?
Я хочу показать содержимое HTML внутри Flash. Есть ли какой-то способ сделать это? Я говорю о полномасштабном HTML (с JavaScript, если это возможно).
Как обеспечить пространства имен в JavaScript экземплярами объектов
У меня есть JavaScript "object", построенный таким образом:
function foo()
{
this.length = 0;
}
foo.prototype.getLength = function()
{
return this.length;
}
...
Я знаю, как эмулировать пространства имен с объектами singleton JavaScript, но как лучше всего использовать объект "namepace", такой как выше, который будет intanced?
Я знаю, что несколько библиотек JavaScript имеют возможности размещения имен, но я использую jQuery и предпочел бы не добавлять еще одну библиотеку в микс. Я хотел бы иметь возможность предоставить свою собственную, возможно, используя jQuery, внутреннюю схему пространства имен для JS моих объектов,которые должны быть созданы.
Спасибо армированный пластик
Лучший метод для разбора различных пользовательских документов XML в Java
Каков наилучший метод для разбора нескольких дискретных пользовательских документов XML с помощью Java?
Предложения по Ajax среде разработки для PHP
Я программист C/C++ профессионально, но я создал несколько личных веб-сайтов, используя PHP and MySQL .
Они довольно просты , и я хотел бы оживить их с помощью Ajax, но я никогда не делал никакого Ajax. Я сделал все разработки до сих пор вручную, т. е. нет IDE или что-то в этом роде.
Есть ли у кого-нибудь предложения по Ajax средам разработки, которые могут мне помочь?
Shareware или freeware были бы предпочтительнее, поскольку мне было бы трудно оправдать расходы на это больше, чем минимальная сумма денег...
Какова цель (если таковая имеется) "javascript:" в тегах обработчика событий?
В последнее время я прилагаю согласованные усилия, чтобы улучшить свои навыки javascript, читая как можно больше кода javascript. При этом я иногда видел префикс javascript: , добавляемый к передней части атрибутов обработчика событий в тегах элементов HTML. Какова цель этой приставки? В принципе, есть ли заметная разница между:
onchange="javascript: myFunction(this)"
и
onchange="myFunction(this)"
?
Картина javax.microedition.lcdui.Graphics на компоненте LWUIT
Каков был бы лучший метод для получения пользовательского элемента (то есть с использованием собственной графики J2ME), окрашенного на элементах LWUIT?
Пользовательский элемент-это реализация из библиотеки сопоставления, которая рисует его содержимое (например, google map) в графический объект. Как можно было бы нарисовать результат непосредственно на элементах LWUIT (на данный момент я пытаюсь нарисовать его на компоненте).
Является ли единственным способом написать оболочку в пакете LWUIT, которая будет раскрывать ее внутреннюю реализацию?
Редактировать:
Джон: ваше решение выглядит как много техники: P то, что я в конечном итоге использовал, это следующая оболочка:
package com.sun.lwuit;
public class ImageWrapper {
private final Image image;
public ImageWrapper(final Image lwuitBuffer) {
this.image = lwuitBuffer;
}
public javax.microedition.lcdui.Graphics getGraphics() {
return image.getGraphics().getGraphics();
}
}
Теперь я могу получить графический элемент 'native' из LWUIT. Краска на нем-эффективно живопись на изображении LWUIT. И я могу использовать изображение для рисования на компоненте.
И это все еще выглядит как хак :)
Но реальная проблема-это 50 кб накладных расходов кода, даже после запутывания. Но это вопрос для другого поста :)
/JaanusSiim
Есть ли альтернативы Gigaspaces?
Что-нибудь такое же хорошее, стабильное и многофункциональное, как gigaspaces?
Как лучше всего сравнить две коллекции в Java и действовать по ним?
У меня есть две коллекции одного и того же объекта, Collection<Foo> oldSet и Collection<Foo> newSet . Необходимая логика заключается в следующем:
- если
fooнаходится в(*)oldSet, но неnewSet, вызовитеdoRemove(foo) - иначе, если
fooнаходится не вoldSet, а вnewSet, вызовитеdoAdd(foo) - в противном случае, если
fooнаходится в обеих коллекциях, но изменен, вызовитеdoUpdate(oldFoo, newFoo) - еще если
!foo.activated && foo.startDate >= now, то звонитеdoStart(foo) - еще если
foo.activated && foo.endDate <= now,doEnd(foo)звоните
( * ) "in" означает совпадение уникального идентификатора, но не обязательно содержимого.
Текущий (устаревший) код выполняет множество сравнений, чтобы вычислить removeSet , addSet , updateSet , startSet и endSet, а затем выполнить цикл для каждого элемента.
Код довольно грязный (отчасти потому, что я уже пропустил некоторую логику спагетти), и я пытаюсь его рефакторировать. Еще немного фоновой информации:
- Насколько я знаю,
oldSetиnewSetна самом деле подкрепленыArrayList - Каждый набор содержит менее 100 элементов, скорее всего, максимум 20
- Этот код вызывается часто (измеряется в millions/day),, хотя наборы редко отличаются
Мой вопрос:
- Если я преобразую
oldSetиnewSetвHashMap<Foo>(порядок здесь не имеет значения), с ключами IDs в качестве ключей, будет ли это облегчать чтение кода и его сравнение? Сколько времени & производительность памяти теряется при преобразовании? - Будет ли повторение двух наборов и выполнение соответствующей операции более эффективным и лаконичным?
Что Javascript rich text editor не сломает проверку орфографии браузера?
Я использую TinyMCE в проекте ASP.Net, и мне нужна проверка орфографии. Единственные Плагины TinyMCE, которые я нашел, используют PHP на стороне сервера, и я думаю, что я мог бы просто сломать и установить PHP на моем сервере и сделать это, но, честно говоря, какая боль. Я не хочу этого делать.
Как оказалось, встроенная проверка орфографии Firefox будет отлично работать для меня, но она, похоже, не работает в редакторах TinyMCE. Я включил опцию gecko_spellcheck, которая должна исправить это, но это не так.
Кто-нибудь знает о хорошем текстовом редакторе, который не нарушает проверку орфографии браузера?
Раскрашивание изображений в Java
Я работаю над некоторым кодом, чтобы раскрасить изображение в Java. В основном я хотел бы сделать что-то вроде команды GIMP colorize, так что если у меня есть BufferedImage и цвет, я могу раскрасить изображение с помощью данного цвета. Кто-нибудь есть идеи? Мой текущий лучший способ сделать что-то вроде этого-получить значение rgb каждого пикселя в BufferedImage и добавить к нему значение RGB цвета с некоторым коэффициентом масштабирования.
Как я скрываю пустые имена переменных скорости?
Я использую Struts + Velocity в заявке Java, но после того, как я отправлю форму, страница подтверждения (шаблон Velocity) показывает имена переменных вместо пустой метки, как возраст в следующем примере:
Имя: Фернандо
Возраст: {person.age}
Пол: Мужской
Я хотел бы знать, как это скрыть!
Лучший способ получить объекты из BlockingQueue в параллельной программе?
Каков наилучший способ получить объекты из BlockingQueue в параллельной программе, не попадая в состояние гонки? В настоящее время я делаю следующее, И я не уверен, что это лучший метод:
BlockingQueue<Violation> vQueue;
/*
in the constructor I pass in a BlockingQueue object
full of violations that need to be processed - cut out for brevity
*/
Violation v;
while ( ( v = vQueue.poll(500, TimeUnit.MILLISECONDS) ) != null ) {
// do stuff with the violation
}
Я еще не достиг состояния гонки... но я не слишком уверен, что это действительно безопасно.
Проблема С Кнопкой Safari Назад
Я занимаюсь небольшим программированием и веб-работой для местного общественного колледжа. Работа, которая включает в себя поддержание очень большого и душераздирающего веб-сайта, который состоит из Ходж-поджа VBScript, javascript, Dreamweaver, сгенерированного cruft и коллекции дополнений, которые различные мошенники убедили их купить на протяжении многих лет.
Несколько дней назад мне позвонили "The website is locking up for people using Safari!" хорошо, Шаг первый скачать Safari (v3.1.2), Шаг второй серфинг на сайт. Кажется, все работает нормально.
Короче говоря, я наконец-то вычленил проблему, и она относится к кнопке возврата Safari. На сайте используется меню fancy-pants javascript, которое работает в каждом браузере, который я пробовал, включая Safari, в первый раз. Но в Safari, если вы перейдете по ссылке со страницы, а затем нажмете кнопку Назад, Меню больше не работает.
Я сделал сокращенную веб-страницу, чтобы проиллюстрировать этот принцип.
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head><title>Safari Back Button Test</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body onload="alert('Hello');">
<a href="http://www.codinghorror.com">Coding Horror</a>
</body>
</html>
Загрузите страницу, и вы увидите окно оповещения. Затем перейдите по ссылке со страницы и нажмите кнопку Назад. В IE и Firefox вы снова видите окно оповещения, в Safari-нет.
После энергичного поиска в гугле я обнаружил других людей с похожими проблемами, но без действительно удовлетворительных ответов. Таким образом, мой вопрос заключается в том, как я могу заставить мои страницы работать так же, как в Safari после того, как пользователь нажимает кнопку назад, как и в других браузерах?
Если это глупый вопрос, пожалуйста, будьте нежны, javascript несколько ново для меня.
Java аннотации
Какова цель аннотаций в Java? У меня есть это нечеткое представление о них как о чем-то промежуточном между комментарием и реальным кодом. Влияют ли они на программу во время выполнения?
Каковы их типичные обычаи?
Являются ли они уникальными для Java? Существует ли эквивалент C++?
Чтение объектов модели, отображенных в шаблонах скорости
У меня есть структура скорости Struts+, например, класс Person, одним из свойств которого является объект Car (с его собственными методами getter/setter), и он сопоставляется с формой скорости, которая подчиняется действию, используя структуру ModelDriven и getModel.
Я что поставить кнопку на форме, которая показывает "View Car", если свойство автомобиля не null или car.id != 0 или показать другую кнопку "Choose Car", если автомобиль null или car.id = 0.
Как мне это закодировать. Я пробовал что-то подобное в файле шаблона :
#if($car != null)
#ssubmit("name=view" "value=View Car")
#else
#ssubmit("name=new" "value=Choose Car")
#end
Но я продолжаю получать ошибку о значении Null в строке #if .
Я также создал логический метод hasCar() лично, чтобы попробовать, но я не могу получить к нему доступ, и я не знаю, почему.
И скорость + Struts учебники трудно найти или иметь хорошую информацию.
Спасибо
Инициализировать поля класса в конструкторе или при объявлении?
Я недавно программировал в C# и Java, и мне интересно, где лучше всего инициализировать поля моего класса.
Должен ли я сделать это при объявлении?:
public class Dice
{
private int topFace = 1;
private Random myRand = new Random();
public void Roll()
{
// ......
}
}
или в конструкторе?:
public class Dice
{
private int topFace;
private Random myRand;
public Dice()
{
topFace = 1;
myRand = new Random();
}
public void Roll()
{
// .....
}
}
Мне действительно интересно, что некоторые из вас, ветеранов, считают лучшей практикой. Я хочу быть последовательным и придерживаться одного подхода.
Каковы плюсы и минусы различных веб-фреймворков Java?
Я рассматриваю возможность создания собственного веб-сайта с использованием Java и пытаюсь решить, какой фреймворк использовать. Однако при быстром поиске Java фреймворков возвращается более 50 вариантов на выбор!
Мой сайт будет просто для моего собственного удовольствия строить его в начале, но если он станет популярным, было бы хорошо, чтобы он имел некоторую масштабируемость или, по крайней мере, мог бы перепроектировать для этого.
Каковы основные различия между более популярными фреймворками? Есть ли случаи, когда один значительно превосходит других? Например, корпоративные приложения с высоким трафиком по сравнению с малыми приложениями с низким трафиком. Мне также интересно, если некоторые из них гораздо легче изучать и использовать, чем другие.
Есть ли кто-нибудь, кто имеет опыт работы с некоторыми из этих рамок и может дать рекомендации? Является ли само количество вариантов просто ранним предупреждением, чтобы избежать Java-ориентированной веб-разработки, где это возможно?
Java EE-ДАО ДВО
Я видел два способа реализации дизайна DAO-DVO.
1) DVO являются объектами и DAOs создаются с помощью фабрик т. е. DAOs также являются объектами 2) DVOs-это снова объекты, но в этом случае DAOs-это классы, которые содержат только статические методы, которые принимают DVOs для выполнения задач.
Мне было интересно, какой путь лучше и более масштабируемым.
Каковы некоторые примеры реализации шаблонов проектирования с использованием JavaScript?
Я умеренно квалифицированный программист, использующий JavaScript, но я не гуру. Я знаю, что вы можете делать с ним довольно мощные вещи, просто я не видел ничего, кроме довольно простых манипуляций DOM. Мне интересно, могут ли люди привести некоторые примеры традиционных концепций дизайна, таких как фабричный метод, Singleton и т. д. с использованием JavaScript. В каких случаях эти шаблоны будут использоваться в интернете?
439   10   01:27, 25th August, 2020
JavaScript редактор в Eclipse
Я ищу лучший редактор JavaScript, доступный в качестве плагина Eclipse. Я использую Spket, и это хорошо. Но есть ли еще более лучший вариант?
Лучше всего regex поймать атаку XSS (Межсайтовый сценарий) (в Java)?
Джефф действительно написал об этом в Sanitize HTML . Но его пример находится в C#, и я на самом деле больше заинтересован в версии Java. У кого-нибудь есть лучшая версия для Java? Достаточно ли хорош его пример, чтобы просто преобразовать непосредственно из C# в Java?
[Update] я поставил награду за этот вопрос, потому что SO не был так популярен, когда я задавал этот вопрос, как сегодня (*). Что же касается всего, что связано с безопасностью, то чем больше людей в нее заглядывают, тем лучше!
(*) На самом деле, я думаю, что он все еще был в закрытом бета-тестировании
Экранирование строк HTML с помощью jQuery
Кто-нибудь знает простой способ избежать HTML из строк в jQuery ? Мне нужно иметь возможность передать произвольную строку и правильно экранировать ее для отображения на странице HTML (предотвращая атаки инъекций JavaScript/HTML). Я уверен, что для этого можно расширить jQuery, но на данный момент я недостаточно знаю о фреймворке, чтобы выполнить это.
Почему Response.BufferOutput = False, не работает?
Эта проблема началась на другой доске , но Дэйв Уорд, который был очень быстрым и полезным, тоже здесь, поэтому я хотел бы забрать здесь, надеюсь, последний оставшийся кусочек головоломки.
В основном, я искал способ сделать постоянные обновления веб-страницы из долгого процесса. Я думал, что AJAX - это правильный путь, но у Дэйва есть хорошая статья об использовании JavaScript . Я интегрировал его в свое приложение, и он отлично работал на моем клиенте, но NOT мой сервер WebHost4Life. У меня есть еще один сервер @ Brinkster и решил попробовать его там и он DOES работает. Все коды одинаковы на моем клиенте, WebHost4Life и Бринкстере, так что, очевидно, что-то происходит с WebHost4Life.
Я планирую написать им email или запросить техническую поддержку, но я хотел бы быть активным и попытаться выяснить, что может происходить с их концом, чтобы вызвать эту разницу. Я сделал все возможное с моим кодом, чтобы отключить буферизацию, как Page.Response.BufferOutput = False . Какие настройки сервера они могли бы реализовать, чтобы вызвать эту разницу? Есть ли какой-нибудь способ обойти его самостоятельно, без их помощи? А если нет, то что им нужно будет делать?
Для справки, ссылка на рабочую версию более простой версии моего приложения находится @ http://www.jasoncomedy.com/javascriptfun/javascriptfun.aspx , а та же версия, которая не работает, находится @ http://www.tabroom.org/Ajaxfun/Default.aspx . Вы заметите, что в рабочей версии вы получаете обновления с каждым шагом, но в той, которая этого не делает, он сидит там долгое время, пока все не будет сделано, а затем делает все обновления для клиента сразу ... и от этого мне становится грустно.
Выполнение скрипта после определенной задержки с помощью JavaScript
Существует ли какой-либо метод JavaScript, подобный jQuery delay() или wait() (чтобы задержать выполнение скрипта на определенное время)?
Важно ли использовать библиотеки для управления XML?
Я использую Java back end для создания строки XML, которая передается в браузер. В настоящее время я использую простую манипуляцию строкой для создания этого XML. Важно ли, чтобы я использовал некоторую библиотеку XML в Java для создания строки XML? Я считаю, что библиотеки очень трудно использовать по сравнению с тем, что мне нужно.
Почему я не могу явно передать аргумент типа в универсальный метод Java?
Я определил функцию Java:
static <T> List<T> createEmptyList() {
return new ArrayList<T>();
}
Один из способов назвать это так:
List<Integer> myList = createEmptyList(); // Compiles
Почему я не могу вызвать его, явно передавая аргумент универсального типа? :
Object myObject = createEmtpyList<Integer>(); // Doesn't compile. Why?
Я получаю ошибку Illegal start of expression от компилятора.
Я не получаю результат, который я ожидаю, используя readLine() в Java
Я использую фрагмент кода ниже, однако он не работает так, как я понимаю, что он должен.
public static void main(String[] args) {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String line;
try {
line = br.readLine();
while(line != null) {
System.out.println(line);
line = br.readLine();
}
} catch (IOException e) {
e.printStackTrace();
}
}
От чтения документации об readLine() он говорит:
Читает строку текста. Считается, что строка завершается любой из подач строки (\n ), возврата каретки ( \r) или возврата каретки, за которым немедленно следует перевод строки.
Возвращается :
A String , содержащий содержимое строки, не включая символы завершения строки, или null, если достигнут конец потока
Бросает :
IOException -при возникновении ошибки ввода-вывода
Исходя из моего понимания этого, readLine должен возвращать null в первый раз, когда вводится только окончание строки, например \r . Однако этот код просто заканчивается бесконечным циклом. После отладки я обнаружил, что вместо null, возвращаемого при вводе только символа завершения, он фактически возвращает пустую строку (""). Это не имеет смысла для меня. Что я не понимаю правильно?
Всплывающие подсказки на изображении
У меня есть изображение, и на нем есть логотипы (это карта), я хочу иметь небольшое всплывающее окно с информацией о местоположении этого логотипа, когда пользователь перемещает свою мышь на указанный логотип.
Могу ли я сделать это без использования фреймворка javascript, и если да, то есть ли какие-либо небольшие библиотеки/скрипты, которые позволят мне сделать это?
Java SWIFT библиотека
Я ищу библиотеку Java для SWIFT сообщений. Я хочу
- разбор сообщений SWIFT в объектную модель
- проверка SWIFT сообщений (включая SWIFT правила проверки сети)
- построение / изменение сообщений SWIFT с помощью объектной модели
Теоретически, мне нужно поддерживать все типы сообщений SWIFT. Но на данный момент мне нужны MT103+, MT199, MT502, MT509, MT515 и MT535.
До сих пор я просмотрел две библиотеки
- AnaSys объекты сообщения (Текст ссылки )
- Datamation SWIFT набор сообщений (текст ссылки )
Обе библиотеки позволяют выполнять задачи, упомянутые выше, но в обоих случаях я не очень доволен.
AnaSys использует внутреннее представление XML для всех сообщений SWIFT, которые вам необходимо знать, чтобы получить доступ к полям сообщения. И вам нужно оперировать на DOM представления XML, нет никакого способа сказать "получить содержимое поля '50K' сообщения SWIFT".
И библиотека Datamation, кажется, имеет более приятный API, но не находит всех ошибок.
Итак, кто-нибудь знает другие библиотеки SWIFT для использования?
Вставка в самом конце в FCKeditor
FCKeditor имеет InsertHtml API (документ JavaScript API), который вставляет HTML в текущую позицию курсора. Как вставить в самом конце документа?
Нужно ли мне запускать браузер нюхать что-то вроде этого
if ( element.insertAdjacentHTML ) // IE
element.insertAdjacentHTML( 'beforeBegin', html ) ;
else // Gecko
{
var oRange = document.createRange() ;
oRange.setStartBefore( element ) ;
var oFragment = oRange.createContextualFragment( html );
element.parentNode.insertBefore( oFragment, element ) ;
}
или есть благословенный путь, который я пропустил?
Edit: конечно, я могу переписать весь HTML, как предлагают ответы, но я не могу поверить, что это путь "blessed". Это означает, что браузер должен уничтожить все, что у него есть, и повторно проанализировать документ с нуля. Это не может быть хорошо. Например, я ожидаю, что это сломает стек отмены.
Что является лучшим всплывающим календарем для заполнения веб-формы?
Я хочу иметь возможность сделать вызов HTTP, обновляя некоторые поля выбора После выбора даты. Я хотел бы контролировать обновление textbox, чтобы знать, когда произошло изменение "true" (в том случае, если была выбрана та же дата). В идеале, я бы вызвал функцию, чтобы открыть календарь и иметь возможность оценить дату перед заполнением текста box...so я могу сделать свою проверку перед вызовом сервера.
Как создать подключаемую программу Java?
Я хочу создать программу Java, которая может быть расширена с помощью плагинов. Как я могу это сделать и где я должен искать?
У меня есть набор интерфейсов, которые плагин должен реализовать, и он должен быть в jar. Программа должна следить за новыми банками в относительной (к программе) папке и регистрировать их каким-то образом.
Хотя мне нравится Eclipse RCP, я думаю, что это слишком много для моих простых потребностей.
То же самое относится и к Spring, но так как я все равно собирался посмотреть на него, я мог бы попробовать.
Но все же я предпочел бы найти способ создать свой собственный плагин "framework" как можно проще.
Лучший способ запустить приложение Java в качестве демона *nix или службы Windows?
Я ищу лучший метод для запуска приложения Java в качестве демона *NIX или службы Windows. Я заглянул в оболочку сервиса Java, проект Apache Commons 'jsvc' и проект Apache Commons 'procrun' . До сих пор оболочка службы Java выглядит так, как будто это лучший вариант... но мне интересно, есть ли какие-либо другие лицензионные продукты "Open Source friendly".
ASP.NET главные страницы эквивалентны в Java
Каким будет эквивалент главных страниц в мире веб-разработки Java? Я слышал о плитках, гобеленах и скорости, но ничего о них не знаю. Они так же просты в использовании, как и главные страницы?
Я хочу что-то такое же простое, как настроить один шаблон, а последующие страницы выводятся из шаблона и переопределяют области содержимого, подобно главным страницам.
Любые примеры были бы великолепны!!
получить информацию о системе OS-го уровня
В настоящее время я создаю приложение Java, которое может работать на многих разных платформах, но в первую очередь на вариантах Solaris, Linux и Windows.
Удалось ли кому-нибудь успешно извлечь такую информацию, как текущее используемое дисковое пространство, использование CPU и память, используемая в базовом OS? А как насчет того, что потребляет само приложение Java?
Предпочтительно я хотел бы получить эту информацию без использования JNI.
Какая обертка Java DOM является лучшей или самой популярной?
Я использовал jdom в прошлом, и посмотрел кратко на XOM и DOM4j . Каждый из них, по-видимому, обеспечивает по существу одно и то же, поскольку каждый из них обеспечивает упрощенную оболочку над (очень тупым) стандартом W3C DOM APIs.
Я знаю, что JDOM в какой-то момент предпринял некоторые усилия для разработки JSR и процесса стандартизации, но, насколько мне известно, эти усилия никуда не ушли. Весь проект, похоже, находится в стазисе с небольшим количеством новых разработок в последние несколько лет.
Есть ли консенсус относительно того, что является лучшим? Также каковы плюсы и минусы каждого из них ?
Java платформа конфигурации
Я нахожусь в процессе отсеивания всех жестко закодированных значений в библиотеке Java и задаюсь вопросом, какой фреймворк будет лучшим (с точки зрения нулевой или close-to-zero конфигурации) для обработки конфигурации во время выполнения? Я бы предпочел файлы конфигурации на основе XML, но это не так важно.
Пожалуйста, отвечайте только в том случае, если у вас есть практический опыт работы с фреймворком. Я ищу не Примеры, а опыт...
Есть ли библиотека виджетов Scheduler / Calendar JS?
Я ищу какой-то компонент на основе JavaScript, который будет использоваться в качестве планировщика курса, который будет представлять собой нечто среднее между календарем Google и временем входа в систему. Я не знаю, подходит ли для этого термин " планировщик курса ", но я опишу это более подробно здесь.
Планировщик Курсов
Виджет будет использоваться для ввода даты и времени курса, например, если я запускаю курс программирования 3 дня в неделю по понедельникам, Вт и СР каждые 7:00 утра до 9:00am, 2 часа каждый день с 1 сентября по 30 ноября. Я мог бы ответить на различные вопросы, и данные курса будут отображаться в календаре. Это также позволит использовать не основанные на шаблонах тайминги, где каждая неделя отличается от другой недели и т. д.
Вопрос
Так неужели я в конечном итоге создам что-то с нуля? Было бы разумно использовать Google Calendar API для этого? Я сделал поиск в Google для некоторых виджетов, но я считаю, что мне нужны лучшие ключевые слова, так как я не смог найти ничего близкого к тому, что я ищу. Есть какие-нибудь советы? Коммерческие библиотеки тоже будут работать на меня. Спасибо.
Зарезервированные ключевые слова в JavaScript
Какие ключевые слова JavaScript (имена функций, переменные и т.д.) зарезервированы?
Как я могу воспроизвести звук в Java?
Я хочу иметь возможность воспроизводить звуковые файлы в своей программе. Куда же мне смотреть?
Использование ItemizedOverlay и OverlayItem в Android Beta 0.9
Кому-нибудь удалось использовать ItemizedOverlays в Android Beta 0.9? Я не могу заставить его работать, но я не уверен, сделал ли я что-то неправильно или эта функция еще не доступна.
Я пытался использовать классы ItemizedOverlay и OverlayItem . Их предназначение-имитировать маркеры карт (как это видно в Мэшапах Google Maps), но у меня были проблемы с их отображением на карте.
Я могу добавить свои собственные пользовательские оверлеи, используя аналогичную технику, это просто ItemizedOverlays , которые не работают.
После того, как я реализовал свой собственный ItemizedOverlay (и переопределил createItem), создание нового экземпляра моего класса, кажется, работает (я могу извлечь из него OverlayItems ), но добавление его в список Overlay карты не делает его таким, каким он должен быть.
Это код, который я использую для добавления класса ItemizedOverlay в качестве Overlay к моему MapView .
// Add the ItemizedOverlay to the Map
private void addItemizedOverlay() {
Resources r = getResources();
MapView mapView = (MapView)findViewById(R.id.mymapview);
List<Overlay> overlays = mapView.getOverlays();
MyItemizedOverlay markers = new MyItemizedOverlay(r.getDrawable(R.drawable.icon));
overlays.add(markers);
OverlayItem oi = markers.getItem(0);
markers.setFocus(oi);
mapView.postInvalidate();
}
Где MyItemizedOverlay определяется как:
public class MyItemizedOverlay extends ItemizedOverlay<OverlayItem> {
public MyItemizedOverlay(Drawable defaultMarker) {
super(defaultMarker);
populate();
}
@Override
protected OverlayItem createItem(int index) {
Double lat = (index+37.422006)*1E6;
Double lng = -122.084095*1E6;
GeoPoint point = new GeoPoint(lat.intValue(), lng.intValue());
OverlayItem oi = new OverlayItem(point, "Marker", "Marker Text");
return oi;
}
@Override
public int size() {
return 5;
}
}
Что такое селекторный двигатель?
Я видел новости о быстром новом селекторном двигателе Джона Ресига под названием Sizzle , появившиеся в нескольких местах, но я не знаю, что такое селекторный двигатель, и ни в одной из статей не было дано объяснения того, что это такое. Я знаю, что Resig-это создатель jQuery, и это шипение-что-то в Javascript, но кроме этого я не знаю, что это такое. Итак, что же такое селекторный двигатель?
Спасибо!
IDE для Swing
Есть ли какой-нибудь IDE, который упрощает создание Swing приложений (в идеале что-то вроде Visual Studio)
Активный Элемент Управления X JavaScript
Мы с моим коллегой столкнулись с неприятной ситуацией, когда нам приходится использовать активный элемент управления X для управления веб-камерой на странице.
Можно ли назначить обработчик событий javascript кнопке в активном элементе управления x, чтобы она запускала действие на странице при нажатии, или нам нужно создать кнопку на самой странице html, которая управляет активным элементом управления X, а затем может запускать любые необходимые действия на странице?
Как определить, какой блог API
Предположим, что вы хотите создать мертвый простой BlogEditor и, одна из ваших идей, сделать то, что делает живой писатель, и попросить только URL блога persons. Как вы можете определить, какой тип блога это?
Основное обнаружение может быть сделано с самим URL, таким как " http://myblog.blogger.com " и т. д. Но что, если он сам себя разместил?
Меня в основном интересует, как это сделать в Java, но этот вопрос может также использоваться в качестве ссылки для любого другого языка.
Предварительный просмотр HTML в Java
Какие библиотеки / методы, о которых вы знаете, могут выполнять базовое представление HTML в Swing? Можете ли вы прокомментировать свой опыт?
Какие библиотеки парсинга HTML вы рекомендуете в Java
Я хочу разобрать некоторые HTML, чтобы найти значения некоторых атрибутов / тегов и т. д.
Какие HTML Парсеры вы рекомендуете? Есть плюсы и минусы?
Рекомендации для редактора Javascript на Windows?
Есть ли какие-нибудь хорошие рекомендации, которые кто-нибудь может предоставить для хорошего редактора Javascript на Windows?
В настоящее время я использую комбинации FireBug и TextPad, но не хотел бы пропустить вечеринку, если там есть лучшие варианты.
Спасибо.
Каково общее правило больших пальцев для создания исключения в Java?
Я был в обеих ситуациях:
- Создание слишком большого количества пользовательских исключений
- Использование слишком большого количества общих классов исключений
В обоих случаях проект стартовал OK, но вскоре стал накладными расходами на обслуживание (и рефактор).
Итак, какова наилучшая практика создания собственных классов исключений?
Сравнение массивов объектов в JavaScript
Я хочу сравнить 2 массива объектов в коде JavaScript. Объекты имеют 8 общих свойств, но каждый объект не будет иметь значения для каждого, и массивы никогда не будут больше 8 элементов каждый, так что, возможно, метод грубой силы обхода каждого и затем просмотра значений 8 свойств является самым простым способом сделать то, что я хочу сделать, но перед реализацией я хотел бы посмотреть, есть ли у кого-нибудь более элегантное решение. Есть какие-нибудь мысли?
Javascript: объявление переменной перед условным результатом?
Мой JavaScript довольно номинальный, поэтому, когда я увидел эту конструкцию, я был немного озадачен:
var shareProxiesPref = document.getElementById("network.proxy.share_proxy_settings");
shareProxiesPref.disabled = proxyTypePref.value != 1;
Не лучше ли сделать if на proxyTypePref.value, а затем объявить var внутри результата, только если вам это нужно?
(Кстати, я также нашел эту форму очень трудной для чтения по сравнению с обычным использованием. Вместо выполнения одного if с блоком операторов в результате был создан набор из двух или трех таких условных выражений.)
UPDATE:
Ответы были очень полезными и требовали большего контекста. Фрагмент кода от Firefox 3, так что вы можете увидеть код здесь:
http://mxr.mozilla.org/firefox/source/browser/components/preferences/connection.js
В принципе, когда вы смотрите на окно настроек подключения в Firefox, щелчок по режимам прокси (переключателям) вызывает включение|отключение различных элементов формы.
Библиотека диаграмм для Java и .Net
Кто-нибудь может порекомендовать библиотеку для генерации диаграмм (гистограммы, круговые диаграммы и т. д.) который работает как на Java, так и на .Net?
Сохраняя пары ключевых значений вместе в HTML с jQuery?
Учитывая выбор с несколькими вариантами в jQuery.
$select = $("<select></select>");
$select.append("<option>Jason</option>") //Key = 1
.append("<option>John</option>") //Key = 32
.append("<option>Paul</option>") //Key = 423
Как следует хранить и извлекать ключ?
ID может быть местом OK, но не будет гарантировано уникальным, если у меня есть несколько общих значений select (и другие сценарии).
Спасибо
и в духе TMTOWTDI.
$option = $("<option></option>");
$select = $("<select></select>");
$select.addOption = function(value,text){
$(this).append($("<option/>").val(value).text(text));
};
$select.append($option.val(1).text("Jason").clone())
.append("<option value=32>John</option>")
.append($("<option/>").val(423).text("Paul"))
.addOption("321","Lenny");
Почему перечисления не являются итеративными?
В Java 5 и выше у вас есть цикл foreach, который магически работает на всем, что реализует Iterable :
for (Object o : list) {
doStuff(o);
}
Однако Enumerable по-прежнему не реализует Iterable , что означает, что для итерации над Enumeration необходимо выполнить следующие действия:
for(; e.hasMoreElements() ;) {
doStuff(e.nextElement());
}
Кто-нибудь знает, есть ли причина, по которой Enumeration все еще не реализует Iterable ?
Edit: как уточнение, я не говорю о языковой концепции перечисления, я говорю о специфическом классе Java в Java API под названием "перечисление".
Где я могу узнать jQuery? Стоит ли оно того?
У меня было много хорошего опыта, изучая веб-разработку на w3schools.com . Это хит или промах, я знаю, но разделы PHP и CSS оказались очень полезными для справки.
В любом случае, мне было интересно, есть ли подобный сайт для jQuery . Я заинтересован в обучении, но мне нужно, чтобы он был online/searchable,, чтобы я мог легко вернуться к нему, когда мне понадобится информация в будущем.
Кроме того, в качестве краткого замечания, стоит ли изучать jQuery? Или мне стоит посмотреть на разные библиотеки JavaScript? Я знаю, что Джефф использует jQuery для переполнения стека, и это, кажется, хорошо работает.
Спасибо!
Edit: на веб-сайте jQuery есть довольно большой список учебных пособий и, казалось бы, исчерпывающая страница документации . У меня еще не было времени пройти через все это, у кого-нибудь еще был опыт с этим?
Правка 2: похоже, что Google теперь размещает библиотеки jQuery. Это должно дать jQuery довольно большое преимущество с точки зрения публичности.
Кроме того, если все пользователи используют единую унифицированную библиотеку aQuery, размещенную в одном и том же месте, она должна быть кэширована для большинства пользователей Интернета на ранней стадии и поэтому не должна влиять на загрузку вашего сайта, если вы решите ее использовать.
2 Месяца Спустя...
Правка 3: я недавно начал использовать jQuery в проекте на работе, и с ним очень приятно работать! Просто хотел, чтобы все знали, что я пришел к выводу, что ABSOLUTELY стоит того, чтобы изучить и использовать jQuery.
Кроме того, я почти полностью изучил официальную документацию jQuery и учебные пособия . Это очень просто.
10 Месяцев Спустя...
jQuery является частью почти каждого веб-приложения, которое я сделал с тех пор, как я впервые написал этот пост. Это делает прогрессивное улучшение легким ветерком и помогает сделать код ремонтопригодным.
Кроме того, все плагины jQuery являются бесценным ресурсом!
3 Года Спустя...
По-прежнему использую jQuery почти каждый день. Теперь я автор jQuery плагинов и консультирую полный рабочий день. Я в основном Джангонавт, но я сделал несколько контрактов javascript только с jQuery. Это спасает нам жизнь.
От одного пользователя jQuery к другому... Вы должны посмотреть на шаблон с jQuery (или подчеркиванием-см. ниже).
Другие вещи, которые я нашел ценными в дополнение к jQuery (с предполагаемой частью проектов, на которых я использую его):
- jQuery Плагин Формы (95%)
- jQuery Пример Формы Плагин (75%)
- jQuery UI (70%)
- Underscore.js (80%)
- CoffeeScript (30%)
- Backbone.js (10%)
ASP.NET JavaScript Обратные Вызовы Без Полного PostBacks?
Я собираюсь запустить довольно тяжелую функцию Ajax в приложении моей компании. Что мне нужно сделать, так это сделать обратный вызов Ajax каждые несколько минут, когда пользователь был на странице.
- Мне не нужно делать никаких обновлений DOM до, после или во время обратных вызовов.
- Мне не нужна никакая информация со страницы, просто файл cookie сайта, который всегда должен быть отправлен с запросами в любом случае, и значение ID.
Мне любопытно узнать, есть ли какой-нибудь чистый и простой способ сделать обратный вызов JavaScript Ajax на страницу ASP.NET, не отправляя обратно rest информации на странице. Я хотел бы не делать этого, если это возможно.
Я действительно просто хочу иметь возможность вызвать один метод на странице, ничего больше.
Кроме того, я ограничен ASP.NET 2.0, поэтому я не могу использовать ни одну из новых функций 3.5 framework ASP AJAX, хотя я могу использовать расширения ASP AJAX для платформы 2.0.
ОБНОВЛЕНИЕ
Я решил принять ответ DanP, поскольку он, похоже, именно то, что я ищу. Наш сайт уже использует jQuery для некоторых вещей, поэтому я, вероятно, буду использовать jQuery для выполнения запросов, поскольку по моему опыту он работает намного лучше, чем фреймворк AJAX ASP.
Как вы думаете, каким будет лучший способ передачи данных в IHttpHandler? Должен ли я добавить переменные в строку запроса или POST данные, которые мне нужно отправить?
Единственное, что я думаю, что мне нужно отправить, - это один ID, но я не могу решить, какой лучший способ отправить ID и заставить IHttpHandler обработать его. Я хотел бы предложить решение, которое предотвратило бы случайный или преднамеренный доступ человека с базовыми компьютерными навыками непосредственно к странице или повторение запросов. Разве это возможно?
Обнаружение неопределенного свойства объекта
Как лучше всего проверить, является ли свойство объекта в JavaScript неопределенным?
Создание градиентов программно?
Учитывая 2 rgb цветов и прямоугольную область, я хотел бы создать базовый линейный градиент между цветами. Я сделал быстрый поиск , и единственное, что мне удалось найти, - это запись в блоге, но пример кода, похоже, отсутствует, или, по крайней мере, он был на момент этой публикации. Помогает все, что угодно: алгоритмы, примеры кода, что угодно. Это будет написано в Java, но слой отображения уже позаботился, мне просто нужно выяснить, как понять, что отображать.
JavaServiceWrapper на 64bit linux, есть проблемы?
Мы уже довольно давно используем 32-битную версию linux JavaServiceWrapper , и она отлично работает. Теперь мы рассматриваем также его использование на 64-битных системах linux. На веб-сайте есть загрузки для 64-битных двоичных файлов, но, заглянув в Makefile для 64-битной версии, я нашел следующий комментарий: # Этот makefile находится в процессе выполнения. Он строит, но результирующий libwrapper.so еще не работает. # Если вы знаете,как это исправить, пожалуйста, помогите.
Может ли кто-нибудь подтвердить, что этот комментарий просто устарел и полученная обертка будет работать без недостатков?
Когда выбрать проверенные и непроверенные исключения
В Java (или любом другом языке с проверяемыми исключениями), создавая свой собственный класс исключений, как вы решаете, следует ли его проверять или нет?
Мой инстинкт говорит, что проверенное исключение будет вызвано в тех случаях, когда вызывающий может быть в состоянии восстановить каким-то продуктивным способом, где как непроверенное исключение будет больше для неустранимых случаев, но мне было бы интересно узнать мысли другого.
Какие вопросы следует учитывать при переопределении equals и hashCode в Java?
Какие проблемы / подводные камни необходимо учитывать при переопределении equals и hashCode ?
Как я могу заставить "jconsole" работать с Websphere 6.1?
Я развернул некоторые управляемые бобы на WebSphere 6.1, и мне удалось вызвать их через автономный клиент, но когда я пытаюсь использовать приложение "jconsole", распространяемое со стандартным JDK can, оно не может работать.
Удалось ли кому-нибудь соединить jconsole с WAS 6.1?
IBM WebSphere 6.1 поддерживает расширение управления JSR 160 JavaTM (JMX) Remote API. Кроме того, он использует реализацию MX4J ( http://mx4j.sourceforge.net ). Но я не могу заставить его работать ни с "jconsole", ни с "MC4J".
У меня есть Classpath и JAVA_HOME правильно установлены, так что проблема это не там.
Есть ли библиотека для рендеринга основных блок-схем в Javascript/CSS?
На веб-странице Я хочу динамически отображать очень простые блок-схемы, т. е. несколько ящиков, соединенных линиями. В идеале пользователь может нажать на один из этих ящиков ( DIVs ?) и быть перенесенным на другую страницу. Обращение к Flash кажется излишним. Кто-нибудь знает о какой-либо стороне клиента (т. е. server agnostic ) Javascript или CSS library/technique , которые могут помочь достичь этого?
Лучший Шаблон Apache Ant
Каждый раз, когда я создаю новый проект, я копирую файл ant последнего проекта в новый и делаю соответствующие изменения (пытаясь в то же время сделать его более гибким для следующего проекта). Но так как я действительно не думал об этом в самом начале, файл начал выглядеть действительно уродливо.
Есть ли у вас шаблон Ant, который можно легко перенести в новый проект? Есть ли советы/сайты для его создания?
Спасибо.
Java Singleton vs static - есть ли реальное преимущество в производительности?
Я объединяю ветвь CVS, и одним из самых больших изменений является замена, где бы это ни происходило, шаблона Singleton абстрактными классами, которые имеют статический блок инициализации и все статические методы.
Это то, что стоит сохранить, поскольку это потребует слияния большого количества конфликтов, какую ситуацию я бы рассматривал для того, чтобы этот рефакторинг был стоящим?
Мы запускаем это приложение под Weblogic 8.1 (так что JDK 1.4.2)
извините, Томас, позвольте мне уточнить..
версия HEAD имеет традиционный шаблон singleton (частный конструктор, getInstance() и т. д)
ветвь версии не имеет конструктора, является "публичным абстрактным классом" и изменила все методы на объекте, чтобы быть 'static'. Код, который раньше существовал в частном конструкторе, перемещается в статический блок.
Затем все виды использования класса изменяются, что приводит к многочисленным конфликтам в слиянии.
Есть несколько случаев, когда это изменение было сделано.
Наложите полный порядок на все экземпляры класса *any* в Java
Я не уверен, будет ли следующий код обеспечивать все условия, указанные в Javadoc Comparator.
class TotalOrder<T> implements Comparator<T> {
public boolean compare(T o1, T o2) {
if (o1 == o2 || equal(o1, o2)) return 0;
int h1 = System.identityHashCode(o1);
int h2 = System.identityHashCode(o2);
if (h1 != h2) {
return h1 < h2 ? -1 : 1;
}
// equals returned false but identity hash code was same, assume o1 == o2
return 0;
}
boolean equal(Object o1, Object o2) {
return o1 == null ? o2 == null : o1.equals(o2);
}
}
Будет ли приведенный выше код накладывать полный порядок на все экземпляры любого класса, даже если этот класс не реализует сопоставимый?
Как я могу получить путь, где пользователь установил мое приложение Java?
Я хочу открыть диалоговое окно файла в Java, которое по умолчанию соответствует каталогу установки приложения.
Каков наилучший способ получить эту информацию программно?
Java import/экспорт зависимостей
Я пытаюсь найти способ перечислить (статические) требования к зависимостям файла jar, в терминах которых символы требуются во время выполнения.
Я вижу, что методы, экспортируемые классами, могут быть перечислены с использованием "javap", но, похоже, нет противоположного объекта для перечисления 'imports'. Возможно ли это сделать?
Это было бы похоже на утилиту dumpbin в разработке Windows, которая может использоваться для перечисления экспорта и импорта DLL.
EDIT: Спасибо за ответы; я проверил все предложения; принял DependencyFinder, поскольку он наиболее близко соответствует тому, что я искал.
Как избежать OutOfMemoryError при использовании Bytebuffers и NIO?
Я использую ByteBuffers и FileChannels для записи двоичных данных в файл. Когда я делаю это для больших файлов или последовательно для нескольких файлов, я получаю исключение OutOfMemoryError .
Я где-то читал, что использование Bytebuffers с NIO нарушено и его следует избегать. Кто-нибудь из вас уже сталкивался с подобной проблемой и нашел решение для эффективного сохранения больших объемов двоичных данных в файле java?
Является ли вариант jvm -XX:MaxDirectMemorySize правильным решением?
Java и вручную завершить выполнение
Если я вызову finalize() для объекта из моего программного кода, будет ли JVM все еще запускать метод снова, когда сборщик мусора обрабатывает этот объект?
Это был бы примерный пример:
MyObject m = new MyObject();
m.finalize();
m = null;
System.gc()
Может ли явный вызов finalize() заставить сборщик мусора JVM не запускать метод finalize() на объекте m ?
Лучший компрессор JavaScript
Какой самый лучший компрессор JavaScript доступен? Я ищу инструмент, который:
- прост в использовании
- имеет высокую степень сжатия
- Производить надежные конечные результаты (не портит код)
Почему вы не вызываете явно finalize() или не запускаете сборщик мусора?
Прочитав этот вопрос, я вспомнил, как меня учили Java и говорили никогда не звонить finalize() и не запускать сборщик мусора, потому что "это большой черный ящик, о котором вам никогда не нужно беспокоиться". Может ли кто-нибудь свести рассуждения об этом к нескольким предложениям? Я уверен, что мог бы прочитать технический отчет Sun по этому вопросу, но я думаю, что хороший, короткий, простой ответ удовлетворил бы мое любопытство.
Javascript Причуды Браузера - array.Length
Код:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Unusual Array Lengths!</title>
<script type="text/javascript">
var arrayList = new Array();
arrayList = [1, 2, 3, 4, 5, ];
alert(arrayList.length);
</script>
</head>
<body>
</body>
</html>
Обратите внимание на лишнюю запятую в объявлении массива. Приведенный выше код дает различные выходные данные для различных браузеров:
Safari: 5
Firefox: 5
IE: 6
Лишняя запятая в массиве игнорируется Safari и FF, в то время как IE обрабатывает ее как другой объект в массиве.
При некоторых поисках я нашел смешанные мнения о том, какой ответ является правильным. Большинство людей говорят, что IE-это правильно, но тогда Safari делает то же самое, что и Firefox. Я не проверял это на других браузерах, таких как Opera, но я предполагаю, что есть расхождения.
Мой вопрос:
i. какой из них правильный?
Edit: по общему согласию (и руководящим принципам ECMAScript) мы предполагаем, что IE снова виноват.
ii. Есть ли еще какие-либо подобные Javascript браузерные причуды, которых я должен опасаться?
Edit: Да, есть множество причуд Javascript. www.quirksmode.org -хороший ресурс для того же самого.
раздел III. Как избежать таких ошибок, как эти?
Edit: используйте JSLint для проверки вашего javascript. Или используйте некоторые внешние библиотеки . Или санируйте свой код.
Спасибо DamienB , JasonBunting, Джону и Конраду Рудольфам за их вклад.
SimpleModal Break ASP.Net Postbacks
Я использую jQuery и SimpleModal в проекте ASP.Net, чтобы сделать несколько хороших диалогов для веб-приложения. К сожалению, любые кнопки в модальном диалоге больше не могут выполнять свои обратные вызовы, что на самом деле неприемлемо.
Есть один источник, который я нашел с обходным путем, но за всю свою жизнь я не могу заставить его работать, главным образом потому, что я не полностью понимаю все необходимые шаги.
У меня также есть обходной путь, который должен заменить обратную связь, но он уродлив и, вероятно, не самый надежный. Мне бы очень хотелось, чтобы эти постбэки снова заработали. Есть какие-нибудь идеи?
UPDATE: я должен уточнить, что обратные сообщения не работают, потому что Javascript, используемый для выполнения обратных сообщений, каким-то образом сломался, поэтому при нажатии на кнопку ничего не происходит.
Как создать таблицу hash в Java?
Каков наиболее простой способ создания таблицы hash (или ассоциативного массива...) в Java году? Мой google-fu нашел пару примеров, но есть ли стандартный способ сделать это?
И есть ли способ заполнить таблицу списком пар ключ- > значение без отдельного вызова метода add для объекта для каждой пары?
Безопасность Для Применения Голосования
У меня есть проект по созданию голосующего настольного приложения для класса в Java. Хотя безопасность не является фокусом проекта, я хотел бы быть настолько реалистичным, насколько это возможно. Назовите некоторые из основных инструментов для интеграции безопасности в приложение Java.
Edit: я в первую очередь не беспокоюсь о физической безопасности, мы просто создаем приложение, а не целую систему. Я хочу убедиться, что голоса записаны правильно и не могут быть изменены или прочитаны кем-то другим.
Достаточно ли использовать обфускатор для защиты моего кода JavaScript?
Я работаю над созданием инструмента разработки, который написан на JavaScript.
Это не будет проект с открытым исходным кодом и будет продаваться (надеюсь) как коммерческий продукт.
Я ищу лучший способ защитить свои инвестиции. Достаточно ли использовать обфускатор (code mangler) для разумной защиты кода?
Есть ли другие альтернативы, о которых я не знаю?
(Я не уверен, что obfuscator-это правильное слово, это одно из приложений, которое берет ваш код и делает его очень нечитаемым.)
Лучший GUI дизайнер для eclipse?
Я ищу хорошего дизайнера GUI для swing в eclipse. Мое предпочтение отдается плагину free/open-source.
Что такое обязательное покрытие в моей презентации Groovy?
Я работаю над подготовкой введения в презентацию Groovy для моей локальной группы пользователей Java, и я в значительной степени собрал ее вместе. Я хотел бы увидеть то, что вы все думаете, что я просто должен покрыть.
Помните, что это вводная презентация. Большинство людей являются опытными разработчиками Java, но я почти уверен,что у них мало знаний о Groovy. Я не буду отравлять колодец, упоминая о том, что я уже сделал, чтобы покрыть, поскольку я хочу посмотреть, что может предложить сообщество.
Какие лучшие вещи я могу охватить (в течение 1 часа), которые помогут мне эффективно общаться с этими разработчиками Java, насколько полезным для них может быть Groovy?
p. s.я поделюсь своей презентацией здесь позже для всех, кто заинтересован.
как и было обещано теперь когда моя презентация была представлена вот она
Десериализация на другом языке
Сетевой адаптер log4j отправляет события в виде сериализованного объекта java. Я хотел бы иметь возможность захватить этот объект и десериализовать его на другом языке (python). Разве это возможно?
Обратите внимание, что захват сети прост; это просто сокет TCP и чтение в потоке. Трудность заключается в десериализующей части
Как поддерживать правильное событие Javascript после использования cloneNode (true)
У меня есть элемент формы, который содержит несколько строк входных данных. Подумайте о каждой строке как об атрибутах нового объекта, который я хочу создать в своем веб-приложении. Кроме того, я хочу иметь возможность создавать несколько новых объектов в одном посте HTTP. Я использую встроенный метод Javascript cloneNode (true) для клонирования каждой строки. Проблема в том, что каждая входная строка также имеет ссылку удаления, прикрепленную к ее onclick-событию:
// prototype based
<div class="input-line">
<input .../>
<a href="#" onclick="$(this).up().remove();"> Remove </a>
</div>
При нажатии на ссылку удаления клонированной входной линии также удаляются все входные линии, которые были клонированы из того же объекта dom. Можно ли повторно привязать объект "this" к соответствующему тегу привязки после использования cloneNode (true) на указанном выше элементе DOM?
Подавить диалоговое окно NTLM после несанкционированного запроса
В недавнем проекте sharepoint я реализовал веб-часть аутентификации, которая должна заменить диалоговое окно аутентификации NTLM. Он отлично работает, пока пользователь предоставляет действительные учетные данные. Всякий раз, когда пользователь предоставляет неверные учетные данные, диалоговое окно NTLM появляется в Internet Explorer.
Мой код Javascript, который выполняет аутентификацию через XmlHttpRequest, выглядит следующим образом:
function Login() {
var request = GetRequest(); // retrieves XmlHttpRequest
request.onreadystatechange = function() {
if (this.status == 401) { // unauthorized request -> invalid credentials
// do something to suppress NTLM dialog box...
// already tried location.reload(); and window.location = <url to authentication form>;
}
}
request.open("GET", "http://myServer", false, "domain\\username", "password");
request.send(null);
}
Я не хочу, чтобы диалоговое окно NTLM отображалось, когда пользователь предоставляет недопустимые учетные данные. Вместо этого должна быть выполнена обратная передача с помощью кнопки входа в форму аутентификации. Другими словами, браузер не должен узнать о моем несанкционированном запросе.
Есть ли способ сделать это через Javascript?
Генератор шаблона документации
У меня есть большая кодовая база без Javadoc, и я хочу запустить программу для написания скелета с основной информацией Javadoc (например, для параметра каждого метода write @param...),, поэтому мне просто нужно заполнить оставшиеся пробелы.
Кто-нибудь знает хорошее решение для этого?
Редактировать:
JAutodoc - это то, что я искал. Он имеет Ant задач, плагин Eclipse и использует скорость для определения шаблона.
Как получить пиксельные координаты (x, y) курсора в текстовых полях?
Я использую jQuery и пытаюсь найти кроссбраузерный способ получить пиксельные координаты каретки в полях <textarea> s и input таким образом, чтобы я мог разместить абсолютно позиционированный div вокруг этого местоположения.
Есть ли какой-нибудь плагин jQuery? Или JavaScript сниппет, чтобы сделать именно это?
Почему сеансовые компоненты без сохранения состояния являются однопоточными?
В соответствии с моим пониманием сеансовые компоненты без состояния используются для кодирования бизнес-логики. Они не могут хранить данные в своих переменных экземпляра, поскольку их экземпляр совместно используется несколькими запросами. Таким образом, они больше похожи на классы Singleton. Однако разница заключается в том, что contain создает (или повторно использует из пула) отдельный экземпляр сеансовых компонентов без сохранения состояния для каждого запроса.
После поиска в Google я мог бы найти рассуждение о том, что спецификация Java EE говорит, что они должны быть однопоточными. Но я не могу понять причину, по которой указаны однопоточные ?
Java возврат копии для скрытия будущих изменений
В Java, скажем, у вас есть класс, который обертывает ArrayList (или любую коллекцию) объектов.
Как бы вы вернули один из этих объектов, чтобы вызывающий объект не видел никаких будущих изменений объекта, сделанных в ArrayList?
т. е. вы хотите вернуть глубокую копию объекта, но вы не знаете, можно ли его клонировать.
Как синхронизировать историю браузера при использовании Ajax?
Я пишу простое приложение для фотоальбома, используя ASP.NET Ajax.
Приложение использует асинхронные вызовы Ajax для предварительной загрузки следующей фотографии в альбом, не изменяя URL в браузере.
Проблема заключается в том, что когда пользователь нажимает кнопку Назад в браузере, приложение не возвращается к предыдущей фотографии, а переходит на домашнюю страницу приложения.
Есть ли способ обмануть браузер, чтобы добавить каждый вызов Ajax в историю просмотров?
Как отправить форму, когда нажата клавиша возврата?
Может ли кто-нибудь сказать мне, как отправить форму HTML, когда нажата клавиша возврата и если в форме нет кнопок? Кнопки "Отправить" там нет . Вместо этого я использую пользовательский div.
Посоветуйте толковую книгу по Java EE 6
Здравствуйте.
Посоветуйте пожалуйста толковую книгу по Java Enterprise Edition 6.
С программированием на Java знаком. Варианты на английском языке так же приветствуются.
Заранее спасибо.
Swing — прогрессбар
Господа, я долго пытался понять, как же мне заставить работать програсс-бар, но у меня так ничего и не получилось.
Ситуация такая — обрабатывается большой массив объектов, понятно, что в for-цикле.
На JFrame есть прогрессбар.
Код выглядит примерно так:
SwingUtilities.invokeLater(new Runnable(){
@Override
public void run(){
for(Geoobject geoobject:Geoobjects){
//здесь нужно поменять значение прогрессбара
//Какие-то действия с объектом
for(Rajon rajon:geoobject.getRajonsSet()){
//Здесь нужно поменять текст на прогрессбаре
//Какие-то действия с объектом
}
}
});
progressBar не обновляется, пока работает for-цикл.
А как только он отработает, пользователь сразу же видит уже заполненный прогрессбар.
Причем при дебаге видно, что value у него меняется. Но на экране ничего не происходит.
SwingUtilities.invokeLater(new Runnable(){
@Override
public void run(){
for(Geoobject geoobject:Geoobjects){
//здесь нужно поменять значение прогрессбара
//Какие-то действия с объектом
for(Rajon rajon:geoobject.getRajonsSet()){
//Здесь нужно поменять текст на прогрессбаре
//Какие-то действия с объектом
}
}
});
JSF 2: Как отобразить информационное сообщение после редиректа?
Есть страница с формой авторизации, после корректного заполнения пары login-password переходим на главную страницу сайта и отображаем информационное сообщение, что авторизация прошла успешно. Нужно заметить, что переход на главную страницу происходит redirect запросом (каким способом происходит редирект welcome?faces-redirect=true или <redirect/> не имеет значение).
Сообщение помещается в FacesContext следующим образом:
FacesContext facesContext = FacesContext.getCurrentInstance();
FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_INFO, message, null);
facesContext.addMessage(null, facesMessage);
Проблема в том, что после редиректа <h:messages /> не показывает информационное сообщение. В то же время, если редирект не делать, а ограничиться одним POST запросом, то информационное сообщение отображается.
Пробовал активировать
FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true)
, но этот механизм помогает отобразить сообщение, только на текущей странице, даже если мы на неё вернёмся позже, но на другой странице (по другому url-адресу) <h:messages /> не может достать сообщение.
Соответственно, вопрос — как отобразить информационное сообщение после редиректа?
Может где-нибудь нужно указать правильный scope для <h:messages /> или FacesMessage?
Проект крутиться на Glassfish 3, Java EE 6, JSF 2.
FacesContext facesContext = FacesContext.getCurrentInstance();
FacesMessage facesMessage = new FacesMessage(FacesMessage.SEVERITY_INFO, message, null);
facesContext.addMessage(null, facesMessage);
FacesContext.getCurrentInstance().getExternalContext().getFlash().setKeepMessages(true)
Может встречал кто сервис "гостевая книга" или "обратная связь", которые позволяют форму в виде на javascript поставить к себе на сайт
Интересует именно такой вариант! не нужно предлагать написать/установить на свой хост.
Именно сервис!
спасибо за ответы заранее :)
Синтаксис ООП в js и использование prototype
Чем отличаются данные куски кода и какой в каких случаях будет предпочтительнее?
A
function Obj() {}
Obj.method = function(type) {
return this.coords[type];
};
var obj = new Obj(),
current = obj.method(type);
B
function Obj() {}
Obj.prototype.method = function(type) {
return this.coords[type];
};
var obj = new Obj(),
current = obj.method(type);
C
var obj = {
method : function(type) {
return this.coords[type];
}
},
current = obj.method(type);
D
function objMethod(type){
return this.coords[type];
}
var obj = {
method : objMethod
},
current = obj.method(type);
added @ 1732:
E
function Obj() {
this.method = function(type) {
return this.coords[type];
};
}
var obj = new Obj(),
current = obj.method(type);
function Obj() {}
Obj.method = function(type) {
return this.coords[type];
};
var obj = new Obj(),
current = obj.method(type);
function Obj() {}
Obj.prototype.method = function(type) {
return this.coords[type];
};
var obj = new Obj(),
current = obj.method(type);
var obj = {
method : function(type) {
return this.coords[type];
}
},
current = obj.method(type);
function objMethod(type){
return this.coords[type];
}
var obj = {
method : objMethod
},
current = obj.method(type);
function Obj() {
this.method = function(type) {
return this.coords[type];
};
}
var obj = new Obj(),
current = obj.method(type);
Посоветуйте книгу по JavaScript
Посоветуйте бумажную книгу по javascript для углубленного изучения для неновичка (программиста, имеющего опыт с другими языками).
Заказал книгу «Javascript подробное руководство» Дэвида Макфарланда — там оказалась вода про jquery. Ещё попадались варианты, в которых все сильно упрощено (аля для чайников).
Хотелось бы, чтобы в книге были освещены такие моменты, как
типы переменных в js,
понятие прототипа,
наследование,
обратные вызовы,
работа с DOM,
регулярные выражения.
И поменьше примеров на ajax, где приводится листинг серверного кода на десять страниц.
Посоветуйте JavaScript календарь
Из требований:
— Удобная навигация
— Неделя должна начинаться с понедельника
— Русский язык
— Желательно чтоб дата не вставлялась в entry, а щелчок по дате отправлял POST
Искал на файловых помойках, ничего подходящего не нашел :(
Правильное оформление вызова javascript-функций
Как правильно оформлять вызов функции (js) при клике по ссылке, кнопке или любом другом элементе. Давным-давно меня научили писать вызов в onclick(), но я видел несколько других вариантов этого действа.
Поэтому хочется узнать, как же всё-таки наиболее верно это делать?
Как установить java-плагин для Google Chrome под Ubuntu
www.java.com/ru/download/help/testvm.xml — тестовая страница радует гордым «Missing Plug-in».
JRE установлен, интернет прогуглен на тему «chrome plugin java».
Имеются ли нормальные переводы книги Thinking in Java?
Конкретно интересует 4ое издание. Видел 4ое издание от издательства «Питер» — оно ужасно. Может быть есть какое-то переиздания? И если читать предыдущие издания, как там с переводом и сильно ли они устарели?
Cтатус ответа сервер (200, 404, ...) при синхронной загрузке страницы?
Как при помощи javascript узнать статус ответа сервер (200, 404, ...) при первичной синхронной загрузке страницы? Т.е. XMLHttpRequest в данном случае не существует.
Получение значения элемента <version /> из pom.xml в коде проекта
Я правильно понимаю, что нет никаких разумных способов получить значение элемента <version /> из pom.xml в коде проекта?
Создание папки (directory), защищенной паролем с помощью Java
Собственно вопрос в шапке весьма четко указан.
Нужно создать (единожды, в дальнейшем читать и записывать в неё) папку, защищенную паролем. Какими именно средствами Java это можно сделать?
Известна платформа, на которой будет работать приложение: Windows XP sp 2.
P.S. Google как-то вразумительно ответить не смог, или же я неправильно его спрашивал =(
Drag'n'drop для динамически созданных элементов (jQuery)?
В jQuery есть такой хороший плагин jQuery UI Draggable, который позволяет создавать эффекты drag'n'drop. Работает он достаточно просто: нужно для любого существующего элемента вызвать метод .draggable():
$('#test').draggable();
Если же попытаться вызвать этот метод для динамически добавленного элемента, то ничего не произойдёт:
$('body').append('<div id="newblock">Новый элемент</div>');
$('#newblock').draggable();
«Новый элемент» не будет обладать возможностью drag'n'drop. Как сделать тут что-то типо аналога функции .live(), чтобы динамически созданные элементы тоже реагировали на эти методы?
$('body').append('<div id="newblock">Новый элемент</div>');
$('#newblock').draggable();
Как масштабировать шрифт, чтобы он занял собой блок целиком?
Успех на Хабре лёгкого стартапа Ты — супер подвиг меня воскресным вечером покопать в направлении своего улучшателя настроения (пользователи IE извините).
Он работает только в разрешении 1280x1024, и для вычисления размера шрифта используется магический код centered.style.fontSize = (900 - 3 * message.length) + '%';. При этом всё равно проблемы, если кто-то пользуется + "+".
А как бы сделать, чтобы размер шрифта подбирался, чтобы заполнить div? Может можно его адаптивно увеличивать и как-то вычислять размер получающегося блока?
Upd. Пришлось самой разбираться. По ссылке всё работает…
Лишняя запятая в JS
Возник спор по поводу ошибки, возникающей в IE, если встречается лишняя запятая в коде.
Ситуация простая:
items: [
{xtype: 'textfield', cls: 'fake-field', value: 'Manager Login'},
new Ext.form.TextField(Ext.applyIf({fieldLabel: 'Username', name: 'login', allowBlank:false}, fieldConfig)),
this.passwordField,
this.passwordConfirmField,
new Ext.form.Hidden({name: 'companyId'}),
]
Если последнюю запятую не убрать — IE не отрабатывает скрипт. Все остальные браузеры отработают на ура.
Вопрос: Кто прав? Кодер и его запятая (вместе со всеми браузерами) или же IE (который не хочет обрабатывать явный промах программиста).
{xtype: 'textfield', cls: 'fake-field', value: 'Manager Login'},
new Ext.form.TextField(Ext.applyIf({fieldLabel: 'Username', name: 'login', allowBlank:false}, fieldConfig)),
this.passwordField,
this.passwordConfirmField,
new Ext.form.Hidden({name: 'companyId'}),
]
[jQuery UI tabs + layout] layout внутри таба на весь экран... как?
Доброго времени суток… Пытаюсь сделать, чтобы внутри одного из табов был сплиттер таким вот образом:
<link type="text/css" rel="stylesheet" href="css/smoothness/jquery-ui-1.8.4.custom.css"/>
<link type="text/css" rel="stylesheet" href="css/jquery-layout.css"/>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"/>
<script type="text/javascript" src="js/jquery-ui-1.8.4.custom.min.js"/>
<script type="text/javascript" src="js/jquery-layout.js"/>
"Content-Type" content="text/html; charset=UTF-8">
ii
<script type="text/javascript">
$(function() {
$("#tabs").tabs();
});
</script>
"tabs">
- "#expertTab">Expert mode
"#userTab">User mode
<script type="text/javascript">
var expertLayout = null;
$(function() {
expertLayout = $("#expertTab").layout({
resizable: true,
closeable: false
});
});
</script>
<div id="expertTab">
<div id="layout1" class="ui-layout-west">
asdf
</div>
<div id="layout2" class="ui-layout-center">
fdsa
</div>
</div>
<div id="userTab"></div>
</div>
</body>
</html>
* This source code was highlighted with Source Code Highlighter.
и получаю вот это:
.
Как можно сделать, чтобы табы вместе со своим содержимым были во всю высоту окна браузера?
<link type="text/css" rel="stylesheet" href="css/smoothness/jquery-ui-1.8.4.custom.css"/>
<link type="text/css" rel="stylesheet" href="css/jquery-layout.css"/>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"/>
<script type="text/javascript" src="js/jquery-ui-1.8.4.custom.min.js"/>
<script type="text/javascript" src="js/jquery-layout.js"/>
"Content-Type" content="text/html; charset=UTF-8">
ii
<script type="text/javascript">
$(function() {
$("#tabs").tabs();
});
</script>
"tabs">
- "#expertTab">Expert mode
"#userTab">User mode
<script type="text/javascript">
var expertLayout = null;
$(function() {
expertLayout = $("#expertTab").layout({
resizable: true,
closeable: false
});
});
</script>
<div id="expertTab">
<div id="layout1" class="ui-layout-west">
asdf
</div>
<div id="layout2" class="ui-layout-center">
fdsa
</div>
</div>
<div id="userTab"></div>
</div>
</body>
</html>
* This source code was highlighted with Source Code Highlighter.
Как установить java-плагин для Google Chrome под Ubuntu
www.java.com/ru/download/help/testvm.xml — тестовая страница радует гордым «Missing Plug-in».
JRE установлен, интернет прогуглен на тему «chrome plugin java».
Имеются ли нормальные переводы книги Thinking in Java?
Конкретно интересует 4ое издание. Видел 4ое издание от издательства «Питер» — оно ужасно. Может быть есть какое-то переиздания? И если читать предыдущие издания, как там с переводом и сильно ли они устарели?
Cтатус ответа сервер (200, 404, ...) при синхронной загрузке страницы?
Как при помощи javascript узнать статус ответа сервер (200, 404, ...) при первичной синхронной загрузке страницы? Т.е. XMLHttpRequest в данном случае не существует.
Получение значения элемента <version /> из pom.xml в коде проекта
Я правильно понимаю, что нет никаких разумных способов получить значение элемента <version /> из pom.xml в коде проекта?
Создание папки (directory), защищенной паролем с помощью Java
Собственно вопрос в шапке весьма четко указан.
Нужно создать (единожды, в дальнейшем читать и записывать в неё) папку, защищенную паролем. Какими именно средствами Java это можно сделать?
Известна платформа, на которой будет работать приложение: Windows XP sp 2.
P.S. Google как-то вразумительно ответить не смог, или же я неправильно его спрашивал =(
Drag'n'drop для динамически созданных элементов (jQuery)?
В jQuery есть такой хороший плагин jQuery UI Draggable, который позволяет создавать эффекты drag'n'drop. Работает он достаточно просто: нужно для любого существующего элемента вызвать метод .draggable():
$('#test').draggable();
Если же попытаться вызвать этот метод для динамически добавленного элемента, то ничего не произойдёт:
$('body').append('<div id="newblock">Новый элемент</div>');
$('#newblock').draggable();
«Новый элемент» не будет обладать возможностью drag'n'drop. Как сделать тут что-то типо аналога функции .live(), чтобы динамически созданные элементы тоже реагировали на эти методы?
$('body').append('<div id="newblock">Новый элемент</div>');
$('#newblock').draggable();
Как масштабировать шрифт, чтобы он занял собой блок целиком?
Успех на Хабре лёгкого стартапа Ты — супер подвиг меня воскресным вечером покопать в направлении своего улучшателя настроения (пользователи IE извините).
Он работает только в разрешении 1280x1024, и для вычисления размера шрифта используется магический код centered.style.fontSize = (900 - 3 * message.length) + '%';. При этом всё равно проблемы, если кто-то пользуется + "+".
А как бы сделать, чтобы размер шрифта подбирался, чтобы заполнить div? Может можно его адаптивно увеличивать и как-то вычислять размер получающегося блока?
Upd. Пришлось самой разбираться. По ссылке всё работает…
Лишняя запятая в JS
Возник спор по поводу ошибки, возникающей в IE, если встречается лишняя запятая в коде.
Ситуация простая:
items: [
{xtype: 'textfield', cls: 'fake-field', value: 'Manager Login'},
new Ext.form.TextField(Ext.applyIf({fieldLabel: 'Username', name: 'login', allowBlank:false}, fieldConfig)),
this.passwordField,
this.passwordConfirmField,
new Ext.form.Hidden({name: 'companyId'}),
]
Если последнюю запятую не убрать — IE не отрабатывает скрипт. Все остальные браузеры отработают на ура.
Вопрос: Кто прав? Кодер и его запятая (вместе со всеми браузерами) или же IE (который не хочет обрабатывать явный промах программиста).
{xtype: 'textfield', cls: 'fake-field', value: 'Manager Login'},
new Ext.form.TextField(Ext.applyIf({fieldLabel: 'Username', name: 'login', allowBlank:false}, fieldConfig)),
this.passwordField,
this.passwordConfirmField,
new Ext.form.Hidden({name: 'companyId'}),
]
[jQuery UI tabs + layout] layout внутри таба на весь экран... как?
Доброго времени суток… Пытаюсь сделать, чтобы внутри одного из табов был сплиттер таким вот образом:
<link type="text/css" rel="stylesheet" href="css/smoothness/jquery-ui-1.8.4.custom.css"/>
<link type="text/css" rel="stylesheet" href="css/jquery-layout.css"/>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"/>
<script type="text/javascript" src="js/jquery-ui-1.8.4.custom.min.js"/>
<script type="text/javascript" src="js/jquery-layout.js"/>
"Content-Type" content="text/html; charset=UTF-8">
ii
<script type="text/javascript">
$(function() {
$("#tabs").tabs();
});
</script>
"tabs">
- "#expertTab">Expert mode
"#userTab">User mode
<script type="text/javascript">
var expertLayout = null;
$(function() {
expertLayout = $("#expertTab").layout({
resizable: true,
closeable: false
});
});
</script>
<div id="expertTab">
<div id="layout1" class="ui-layout-west">
asdf
</div>
<div id="layout2" class="ui-layout-center">
fdsa
</div>
</div>
<div id="userTab"></div>
</div>
</body>
</html>
* This source code was highlighted with Source Code Highlighter.
и получаю вот это:
.
Как можно сделать, чтобы табы вместе со своим содержимым были во всю высоту окна браузера?
<link type="text/css" rel="stylesheet" href="css/smoothness/jquery-ui-1.8.4.custom.css"/>
<link type="text/css" rel="stylesheet" href="css/jquery-layout.css"/>
<script type="text/javascript" src="js/jquery-1.4.2.min.js"/>
<script type="text/javascript" src="js/jquery-ui-1.8.4.custom.min.js"/>
<script type="text/javascript" src="js/jquery-layout.js"/>
"Content-Type" content="text/html; charset=UTF-8">
ii
<script type="text/javascript">
$(function() {
$("#tabs").tabs();
});
</script>
"tabs">
- "#expertTab">Expert mode
"#userTab">User mode
<script type="text/javascript">
var expertLayout = null;
$(function() {
expertLayout = $("#expertTab").layout({
resizable: true,
closeable: false
});
});
</script>
<div id="expertTab">
<div id="layout1" class="ui-layout-west">
asdf
</div>
<div id="layout2" class="ui-layout-center">
fdsa
</div>
</div>
<div id="userTab"></div>
</div>
</body>
</html>
* This source code was highlighted with Source Code Highlighter.
Существует ли в природе form-builder (PHP) + validator (client+server) в одном флаконе?
Существует ли гибкий form-builder (PHP), позволяющий одновременно назначать правила для серверной и клиентской валидации?
Собственно вопрос о том, чтобы не повторять одну и ту же работу два раза, в частности на хабре уже была попытка осмысления этой проблемы и предложен один из выходов (вернее его прообраз) и как там правильно заметили:
основная мысль — генерация клиентской валидации на сервере
Например, для клиентской валидации и построения всяких вкусностей типа повторяющиеся блоки (к примеру zforms.ru/docs/repeatable-model/) есть красивые решения типа zforms.ru/ от разработчика интерфейсов компании Яндекс Дмитрия Филатова
Да и просто, для валидации полно плагинов с использованием jQuery.
В конце концов есть Vanadium: семантическая валидация на клиенте
Для построения форм и серверной валидации есть замечательная библиотека Алексея Борзова и, как поправил меня сам Алексей, — Bertrand Mansion: HTML_QuickForm2.
Есть первая версия HTML_QuickForm, которая позволяет делать то, что требуется, т.е. строить формы и на основании запрашиваемых правил серверной валидации на лету генерировать правила клиентской валидации, но у нее есть огромный минус — невозможность простыми способами строить сложные формы, т.е. когда требуется например группу полей добавлять в группу, зато ей очень хорошо удаются плоские формы.
Дмитрий Филатов на мой вопрос есть ли обертка для построения таких форм ответил мне в МоёмКруге:
Есть не обертка на PHP, а xml-описание правил валидации, из которого строится с помощью xsl клиентский код и которое может быть использовано для серверной валидации.
Алексей Борзов на вопрос о дальнейшей судьбе HTML_QuickForm2 ответил:
HTML_QuickForm2 в альфе потому, что опять же недописана функциональность (а именно интеграция с жаваскриптом). Но в отличие от старой версии он почти на 100% покрыт тестами и по стабильности явно не хуже...
Другими словами, есть дикое желание подружить HTML_QuickForm2 и zforms.ru, но перед этим хотел бы поинтересоваться у «ленивых программистов», как они борются с ленью при построении форм и двойной работой по проверке вводимых данных?
update: вопрос решил путем запуска проекта jquickform.ru/
Где хранятся локальные переменные в javascript?
Я знаю, что когда в javascript создается глобальная переменная, то она становится свойством объекта window и к ней через него соответственно можно обратиться: window.var. Я никак не могу понять, свойствами чего становятся локальные переменные, объявленные в теле функции? Где они хранятся и как к ним получить доступ?
Контроль состояния прозрачности JavaScript
Доброе утро, хабр!
Задача, что стоит передо мной проста и стара как мир — анимационная смена одной картинки другой при наведении мышки. Картинки имеют одинаковые размеры, одна — просто кнопка, другая — кнопка со «свечением»(hover state), кнопки абсолютно позиционированны и находятся «друг в друге». В примитиве задача решается такими строками кода на jQuery:
$('div#left ul li').css({opacity: 0.0});
$('div#left ul li:first').css({opacity: 1.0});
$("div#left li").mouseover(function () {
$('div#left ul li:first').animate({opacity: 0.0}, 1000);
$('div#left ul li:last').animate({opacity: 1.0}, 1000);
});
$("div#left li").mouseout(function () {
$('div#left ul li:first').animate({opacity: 1.0}, 1000);
$('div#left ul li:last').animate({opacity: 0.0}, 1000);
});
Но у данного подхода есть 1 большая проблема — события вызываются и ставятся в очередь вне зависимости от текущего состояния элемента, то есть несколько наведений мышки на элемент вызывают «перемигивание» элемента. Вопрос состоит в том, как отследить текущее состояние элемента и тем самым не включать его обработку, если в данный момент прозрачность картинки изменяется?
$('div#left ul li:first').css({opacity: 1.0});
$("div#left li").mouseover(function () {
$('div#left ul li:first').animate({opacity: 0.0}, 1000);
$('div#left ul li:last').animate({opacity: 1.0}, 1000);
});
$("div#left li").mouseout(function () {
$('div#left ul li:first').animate({opacity: 1.0}, 1000);
$('div#left ul li:last').animate({opacity: 0.0}, 1000);
});
Подскажите хороший html5 аудиоплеер
Хотел реализовать для своего сайта воспроизведение аудио без флеша, но хорошего инструмента работающего с плейлистами и имеющего достаточное большое колличество настроек не нашел.
Нужно что-то напоминающее prostopleer и www.plusmusica.com/
Chrome заблокировал JS для localhost
Собственно, ситуация такая — если я правильно понял, произошло это после того, как в JS-коде я случайно устроил замкнутый цикл по невнимательности. Chrome грузил страничку меньше пары секунд, сразу выдал сообщение о бесконечном редиректе. После устранения бага попытался вновь загрузить страницу и… Оказалось, что Chrome заблокировал исполнение JS на этой странице (localhost). Вот такой значок появился справа в адресной строке:

При нажатии появляется такое меню:

Но во всех настрйках (включая это самое меню) стоит «разрешить JS».
При перезагрузке Chrome можно наблюдать такое уведомление: скрин
При этом содержимое JS-файла абсолютно неважно, хоть полноценное приложение, хоть 1 строка alert(1);
Кто с таким сталкивался? Что это такое?
P.S.: в других браузерах все ок.
Как сохранить HTML-страницу сгенерированную на JavaScript?
Встречаются страницы, на которых есть динамические части получаемые Ajax или попросту какими-то функция Javascript (например, шаблонизаторами).
Так вот как сохранить скомпилированную страницу, т.е. со всеми выполненными js-функциями? В случае с Ajax скачивание может происходить через некоторое время после загрузки DOM-модели.
Решение желательно на ЯВУ (лучше C#) или через консоль Windows/Linux.
Например, нужно скачать вот эту forexite: Календарь на неделю.
jQuery — выбрать элементы только с определенным набором классов
Возможно глупый вопрос, но я что-то не могу разобраться.
Есть 3 блока с классом .one и один блок с классом .one и .two
Как мне в jQuery выбрать только элемент у которого есть оба класса .one и .two?
[maven] использование отсутствующей в репозиториях библиотеки
Доброго времени суток…
Хочу сделать на Java приложение с веб интерфейсом на основе JWT (http://www.webtoolkit.eu/jwt),
при этом в качестве системы сборки использовать maven. Но столкнулся с тем, что JWT в его репозиториях нету, поэтому вопрос — как можно добавить вручную библиотеку к проекту на maven? Если это имеет значение, то IDE — NetBeans 6.9.1
Android SDK: как получить несжатую фотографию?
Добрый день!
Пишу приложение под Android которое должно получать фотографию и обрабатывать ее особым образом. В доках вычитал что takePicture у класса Camera в качестве параметров принимает callback'и, в которые потом передаются данные полученные во время съемки (rawCallback и jpegCallback).
В результате экспериментов выяснилось что в jpegCallback стабильно приходит готовый JPEG файл, который можно тут же записывать на флешку, а вот в rawCallback приходит null. Гугление не помогает. Вариант распаковывать JPEG и работать с ним не подходит по многим параметрам (скорость, качество и т.д.)
Подскажите пожалуйста как быть?
PS. Тестировалось на Google Nexus ONE и HTC Desire.
PSS. Прилагаю вырезку из кода:
public void TakePicture()
{
if (m_Camera != null && m_CanDoPhoto)
{
m_CanDoPhoto = false;
m_Camera.takePicture(shutterCallback, rawCallback, jpegCallback);
}
}
PictureCallback rawCallback = new PictureCallback()
{
public void onPictureTaken(byte[] _data, Camera _camera)
{
String path = Environment.getExternalStorageDirectory().toString();
File file = new File(path, "MyTestPhoto.raw");
try
{
FileOutputStream fOut = new FileOutputStream(file);
fOut.write(_data);
fOut.flush();
fOut.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
};
PictureCallback jpegCallback = new PictureCallback()
{
public void onPictureTaken(byte[] _data, Camera _camera)
{
m_CanDoPhoto = true;
m_Camera.startPreview();
}
};
public void TakePicture()
{
if (m_Camera != null && m_CanDoPhoto)
{
m_CanDoPhoto = false;
m_Camera.takePicture(shutterCallback, rawCallback, jpegCallback);
}
}
PictureCallback rawCallback = new PictureCallback()
{
public void onPictureTaken(byte[] _data, Camera _camera)
{
String path = Environment.getExternalStorageDirectory().toString();
File file = new File(path, "MyTestPhoto.raw");
try
{
FileOutputStream fOut = new FileOutputStream(file);
fOut.write(_data);
fOut.flush();
fOut.close();
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
};
PictureCallback jpegCallback = new PictureCallback()
{
public void onPictureTaken(byte[] _data, Camera _camera)
{
m_CanDoPhoto = true;
m_Camera.startPreview();
}
};
Вопрос посвящен литературе по Java?
Хочу посоветоваться по поводу аудио, видео и текстовой информации об этом чудесном языке.
Появилась необходимость в освоении его азов.
Источников очень много.
Прошу помочь в выборе.
Буду безумно благодарен узреть Ваши любимые источники.
Заранее благодарен, Можаев Виталий.
Ищем Open Source Orphus
Хочется скрипт для рецензирования статей в Блоггере по аналогии с Orphus и сайтом Леонида Каганова. Чтобы такой скрипт легко встраивался в любой сайт, желательно, чтобы он был на чистом javascript.
Результаты проверки хорошо бы записывать в комментарии к записи, отправлять GET запросом на другой сайт, помещать в Google forms или ещё куда-нибудь. Если записывать замечания в комментарии, то можно потом подрисовывать эти комментарии прямо на том месте, к которому они относятся.
От какого хорошего свободного инструмента оттолкнуться? Получилось найти только плагин для Joomla joomlaforum.ru/index.php/topic%2c12663.0/topicseen.html
Может есть какой-то плагин к jquery? Как-то такая-же функциональность работает на сайте госуслуг?
www.gosuslugi.ru/ru/: Если вы обнаружили неточности в опубликованной информации, просьба оперативно сообщить об этом оператору портала. Выделите некорректный текст и нажмите клавиши CTRL+ENTER. Сведения об ошибках будут оперативно переданы в ведомство, разместившее информацию.
Есть ли люди на Хабре, разбирающиеся в document.on<событие> и в bloggerService.insertEntry, чтобы самим написать подобную библиотеку?
Много материалов по теме можно найти по ссылкам, но как-то мне это особенно не помогло
habrahabr.ru/search/?q=orphus
www.google.ru/search?q=%22ctrl%2Benter%22
Необычное использование побитового XOR в Javascript?
Привет.
Отлаживая недавно очередной кусок чужого кода наткнулся на такой цикл:
while (--i ^ -1) /* тело цикла */;
при этом, изначально i равно некоторому положительному числу. То есть, побитовый оператор используется здесь для целых чисел. Немного подумав, я понял, что результат побитового XOR обратится в нуль единственно в случае, когда числа равны. Тогда условие кастуется в true. В противном случае, будет не-ноль, что кастуется в false.
Получается, можно использовать побитовый XOR вместо оператора != (если мы заранее знаем, что сравниваемые величины суть числа).
Отсюда у меня возник вопрос, который я хочу поставить перед аудиторией.
Почему автор использует XOR?
Вчера весь вечер я размышлял над этим и наиболее правдоподобной причиной мне показалось желание написать «крутой непонятный код». Сразу вспомнилось, как я, когда начинал постигать азы программирования, вдруг обнаружил, что могу писать «лаконичный код, который сложен для понимания и который работает». Мне казалось, что это свидетельствует о каких-то скиллах. На самом деле, понятно, что это свидетельствует об обратном. В пользу этой гипотезы было ещё то, что весь остальной код в окрестности приведённого фрагмента был написан подобным образом.
Правда, мне не давала покоя ещё одна мысль. Я представил себе, что если бы я хотел усложнить код, мне бы почему-то не пришло в голову использовать XOR, даже если бы я и знал о такой возможности.
В результате (безуспешно пытаясь заснуть на протяжение двух часов :) ), я встал, подошёл к компу и написал скриптик, который делал много сравнений тем и иным способом и мерял время.
Оказалось, что если использовать побитовый XOR вместо !=, появляется прирост в производительности (по крайней мере на Firefox), этот прирост стабильный (то есть он есть всегда, то больше, то меньше), но составляет всего лишь около 1%.
Может быть, есть ещё какие-нибудь особенности, дающие преимущество побитовому XOR?
AJAX запрос в jQuery. Как избавится от заголовка Access-Control-Request-Headers?
Здравствуйте. Надо при помощи javascript'а вытянуть данные из xml-файла генерирующегося на удалённом сервере. Всё до чего смог додуматься — сделать ajax запрос к xml-файлу.
Но jQuery вместо GET-запроса отправляет OPTIONS-запрос.
Оказалось, что этот запрос отсылается Firefox'ом в случае cross-domain request, когда отправляются нестандартные заголовки. В случае с jQuery это кажется:
Access-Control-Request-Headers: x-requested-with
Как избавиться от этого заголовка? Или может есть другие способы вытянуть информацию из xml?
JavaScript, фреймворки и парадигмы?
Посоветуйте Javascript framework для разработки интерфейса администрирования со сложными формами. Работающий прототип я сделал с использованием jQuery и десятка плагинов (tabs, drag&drop, ajax file upload, data link, mousewheel, hotkeys...). Но сейчас нужно дополнить интерфейс всеми необходимыми полями, и я понимаю, что приходится копировать очень много кода, а идентификаторы полей разбросаны по всему скрипту. Нужна подходящая парадигма программирования. Думаю, ее может дать какой-то легкий framework.
Посмотрел DoJo. Там, конечно, есть все необходимое. Но у меня сейчас нет месяца на изучение этой системы. К тому же, у нашей системы администрирования такой дизайн, что не удастся использовать готовые визуальные компоненты, которые DoJo предоставляет. Поэтому весь смысл теряется. Примерно та же история и с YUI.
Нужен инструмент, который будет управлять взаимодействием готовых визуальных элементов (которые написаны с использованием большого количества jQuery и плагинов).
С сервера я получаю большой json, в котором разложены все необходимые данные редактируемого объекта. Еще есть несколько дополнительных json-объектов со значениями для всяких выпадающих списков и форм с автоподстановкой. Вернуть нужно json с такой же структурой. Внутри форм активно используется drag&drop. Никаких перезагрузок страницы не происходит.
Ссылки на примеры хороших интерфейсов тоже были бы полезны. Спасибо.
Онлайн семинары по Java
Здравствуйте!
Хотелось бы узнать, существуют ли какие-нибудь площадки с материалами, статьями, скрин( или под)кастами по Java (или по Java EE), наподобие Techdays?
В каком порядке вызовутся конструкторы?
В каком порядке вызовутся конструкторы, когда будет создаваться объект класса ? А деструкторы при удалении объекта? interface professor {};
interface researcher extends professor {};
class teacher implements professor {};
class myprofessor extends teacher implements researcher {};
Совсем ООП забыл. Помогите на вопрос ответить пожалуйста.
interface professor {};
interface researcher extends professor {};
class teacher implements professor {};
class myprofessor extends teacher implements researcher {};
Логотип JavaScript
Существует ли официальный логотип Javascript? Где взять достойную иконку для обозначения JS?
Как бы собрать в табличку все блог-платформы?))
Хочется собрать список блог-платформ — мне кажется это интересно будет. может кто-то видел такие списки уже? Нужны не программные платформы, а именно сервисы, вроде: ЖЖ, Wordpress, BlogSpot.
Принцип отбора предлагаю установить один: текстовость. То есть есть Youtube можно тоже с натяжкой назвать блог-сервисом, но мультимедийным. А интересуют именно текстовые блоги, микроблоги, с социальными фичами и без, западные и наши.
Давайте соберем? Круто было бы указывать: платность/бесплатность, наличие русскогоязычного интерфейса.
1. Livejournal.com
2. Wordpress.com
3. Blogspot.com
4. Typepad.com
5. Blogger.com
6. Блоги@mail.ru (прости, господи)
7. Liveinternet.ru (прости-прости)
8. Twitter.com
9. insanejournal.com — почерпнуто из статьи на mashable — не знал, оказывается жж строился на открытой платформе Danga и этот вот инсейн тоже на ней и
10. journalfen.net — тоже на ней эти два, наверно, шутки ради… но все-таки.
11. Tumblr.com
12. vox.com — сдох, мир его праху
13. xanga.com — блогокоммюнити)) кто бы знал
Что еще?
Удобный трединг в Javascript?
Приветствую.
На самом деле, речь не совсем о трединге. Да, в Javascript «чистого» трединга вроде как нету, но есть ещё webworkers, это я знаю, а здесь я хочу поднять вопрос о другом. Для начала я уточню, что конкретно я буду подразумевать под «тредингом».
Типичная задача следующая. Есть некий код (для определённости, врапнутый в функцию myFunc) и я хочу запустить этот код неким вызовом, но при этом не дожидаясь завершения этого вызова перейти к следующей строке кода, откуда я этот вызов совершаю. Обычно эта задача решается примерно таким образом:
setTimeout( myFunc, 10 );
doSomethingElse();
где myFunc() содержит код, который я хочу выполнить «в треде», а doSomethingElse() содержит код, про который я хочу чтобы он начал выполняться, не дожидаясь завершения myFunc(). А если мне нужно вызвать функцию myFunc() как метод объекта — я могу заюзать замыкание и apply(), обернув это в ещё одну анонимную функцию.
Самое загадочное в таком подходе — второй аргумент функции setTimeout(). Почему я сказал ей выполнить код через 10 милисекунд, а не сразу — через 0? Люди пишут (комменты), что setTimeout(fn, 0) часто работает дольше, чем setTimeout(fn, 10). И там же предлагается ещё более быстрый способ «заказать» асинхронное выполнение функции «прямо сейчас», с использованием postMessage.
Я решил немного поэкспериментировать с приведённым там кодом и сделать его чуть более удобным. Идея состоит в том, что прототипу объекта типа Function добавляется новый метод thread(), который запускает эту функцию асинхронно и форвардит ей все аргументы. Получилось примерно так:
(function() {
var threads = [];
var messageName = "start-thread";
function thread(fn) {
threads.push(fn);
window.postMessage(messageName, "*");
}
function startThread(event) {
if (event.source == window &&
event.data == messageName) {
event.stopPropagation();
if (threads.length> 0) {
( threads.shift() )();
}
}
}
window.addEventListener("message", startThread, true);
Function.prototype.thread = function() {
var args = arguments;
var me = this;
thread(
function() {
me.apply( null, args );
}
);
}
})();
var doSomething = function(a, b) {
alert( a + b );
}
// вызываем doSomething() асинхронно:
doSomething.thread( 2, 3 );
В общем, это практически точная копия кода по ссылке, плюс новый метод thread объектам типа Function.
И теперь внимание вопрос. Для того, чтобы метод thread был действительно удобным, нужно иметь возможность использовать его для методов объектов. То есть, каким-то образом в функцию thread нужно «протащить» информацию об объекте, в контексте которого мы обратились к методу. Использование замыкания напрочь испортит всю элегантность. Хочется пользоваться этим методом примерно так:
myObject.myMethod.thread( arg1, arg2 );
и в результате такого вызова метод myMethod должен вызваться асинхронно в контексте объекта myObject, то есть должно произойти
myObject.myMethod.apply( myObject, [ arg1, arg2 ] );
Возможно ли это?
setTimeout( myFunc, 10 );
doSomethingElse();(function() {
var threads = [];
var messageName = "start-thread";
function thread(fn) {
threads.push(fn);
window.postMessage(messageName, "*");
}
function startThread(event) {
if (event.source == window &&
event.data == messageName) {
event.stopPropagation();
if (threads.length> 0) {
( threads.shift() )();
}
}
}
window.addEventListener("message", startThread, true);
Function.prototype.thread = function() {
var args = arguments;
var me = this;
thread(
function() {
me.apply( null, args );
}
);
}
})();
var doSomething = function(a, b) {
alert( a + b );
}
// вызываем doSomething() асинхронно:
doSomething.thread( 2, 3 );myObject.myMethod.apply( myObject, [ arg1, arg2 ] );
Отправка страницы на печать и .htc глюк.
Проблема в следующем: когда нажимаю на ссылку
PRINT
(сайт goo.gl/adi3)
в ИЕ7 выдается ошибка скрипта:
Ошибка: Arg illegal input string in Vector2D
URL: www.art-welly.com/assets/css/pie.htc
кто сталкивался с такой проблемой и как ее можно решить?
URL: www.art-welly.com/assets/css/pie.htc
Проблемы с созданием иерархического дерева на jQuery?
Пытаюсь сделать для одного из своих проектов «иерархическое дерево» (по сути аналог jQuery Treeview, jsTree и тому подобных плагинов), в котором также задействован функционал drag & drop. Для задействования возможности drag & drop использую jQuery UI. Всё вроде получается, но застопорился на одном моменте.
Лирическое отступление: да, я знаю что это по сути написание велосипеда, и что можно не париться и взять один из распространённых плагинов, но для меня важно научиться делать разные фишки на jQuery с drag & drop, потому что он ещё много где нужен будет в моём проекте.
Значит что имеем. Есть ненумерованный список <ul></ul> элементы которого представляют собой категории. У категорий могут быть подкатегории, а у тех, в свою очередь, свои подкатегории и т.д. Если у категории есть подкатегории, то слева от неё отображается иконка «плюсик», нажав на который, произойдёт запрос на сервер и в ответ мы получим необходимый список подкатегорий, который автоматически вставится в виде подсписка, т.е. вот так:
<ul>
<li class="categories close" id="cat1" rel="1">category A</li>
<li class="categories open" id="cat2" rel="2">category B</li>
<ul id="p2">
<li class="categories" id="cat4" rel="4">subcategory D</li>
<li class="categories" id="cat5" rel="5">subcategory E</li>
<li class="categories" id="cat6" rel="6">subcategory F</li>
</ul>
<li class="categories close" id="cat3" rel="3">category C</li>
</ul>
Лирическое отступление: да, я знаю что по правилам синтаксиса HTML подсписок <ul id=«p2»></ul> должен находится внутри родительского элемента <li></li>, но в таком случае вместе с категорией «category B» будет таскаться за курсором и весь подсписок подкатегорий, чего мы никак не хотим.
С помощью jQuery UI я делаю каждый элемент <li></li> «перетаскиваемым» (draggable), и одновременно «принимающим» (droppable).
Дальше я по задумке хочу сделать следующим образом: пользователь захватывает и начинает «таскать» категорию над списком других категорий; как только таскаемый им элемент оказывается над одной из категорий, происходит запрос на сервер, мы получаем и вставляем список подкатегорий. Делается это для того, чтобы облегчить жизнь пользователю: если пользователь хочет сделать категорию «category C» подразделом «subcategory F», то ему будет достаточно захватить «category C», задержать её над «category B» чтобы открылся список подкатегорий, после чего перетащить и отпустить над «subcategory F».
Всё вроде получается отлично, но есть одно НО, на котором я и застопорился: пользователь захватывает «category C» и держит её над «category B», тем самым заставляя открытся список подкатегорий; в момент появления списка подкатегорий, удерживаемый элемент «category C» уезжает вниз относительно курсора ровно на высоту всего подсписка категорий. Именно эту проблему мне не удаётся пока побороть.
Как я пытался решить эту проблему:
1) в момент вызова функции over (вызывается когда draggable-элемент находится над droppable-элементом и находится в состоянии готовности) пробовал запоминать позицию перетаскиваемого элемента в глобальных переменных вот так:
...
over:function(event,ui) {
_cury = ui.position.top;
_curx = ui.position.left;
...
}
...
после этого запрашивать список подкатегорий и уже после их вставки заново присваивать перетаскиваемому элементу координаты:
...
ui.position.top = _cury;
ui.position.left = _curx;
...
В итоге не сработало.
2) я подумал, что возможно в момент появления подсписка и соответственно «отпрыгивания» перетаскиваемого элемента, он уходит из состояния готовности и вызывается функция out. Тогда я просто перенёс задание запомненных координат в функцию out:
...
out:function(event,ui) {
ui.position.top = _cury;
ui.position.left = _curx;
...
}
...
Это тоже не сработало. Также пробовал использовать ui.offset вместо ui.position — тоже не помогло. Т.е. получение координат перетаскиваемого элемента происходит нормально, корректно. А вот попытка задать их обратно не приводит ни к каким результатам. Может кто подскажет решение?
Скачать полный код примера со всеми файлами и подробными комментариями.
Смотреть пример онлайн.
<ul>
<li class="categories close" id="cat1" rel="1">category A</li>
<li class="categories open" id="cat2" rel="2">category B</li>
<ul id="p2">
<li class="categories" id="cat4" rel="4">subcategory D</li>
<li class="categories" id="cat5" rel="5">subcategory E</li>
<li class="categories" id="cat6" rel="6">subcategory F</li>
</ul>
<li class="categories close" id="cat3" rel="3">category C</li>
</ul>...
over:function(event,ui) {
_cury = ui.position.top;
_curx = ui.position.left;
...
}
......
ui.position.top = _cury;
ui.position.left = _curx;
......
out:function(event,ui) {
ui.position.top = _cury;
ui.position.left = _curx;
...
}
...
JavaScript: объясните return в конструкторе
Объясните, пожалуйста, в чем разница между кодом:
var Test = (function () {
return (function () {
this.qqq = 'a';
});
})();
alert(new Test().qqq);
и
var Test = (function () {
return (function () {
return ({ qqq : 'a' });
});
})();
alert(new Test().qqq);
В обоих вариантах выводится «а». Почему в первом случае — понятно. Первая функция создает замыкание, в которое можно поместить «статические» переменные. Вторая — собственно конструктор и в конструкторе задается объект. Но почему во втором?
Спасибо.
return (function () {
this.qqq = 'a';
});
})();
alert(new Test().qqq);
return (function () {
return ({ qqq : 'a' });
});
})();
alert(new Test().qqq);
К любителям Java?
Никогда толком не любил выносить код в static методы, делал это обычно, если ну никак без этого. А тут задумался и никак не могу найти правильный ответ на, кажется мне, достаточно легкий вопрос.
Есть ли смысл (по ресурсам, быстродействию или ?) в преобразовании:
public class A
{
private final int a;
private final Map<Integer, Integer> map;
public A(int a)
{
this.a = a;
this.map = new HashMap<Integer, Integer>();
}
public int calcSomthing()
{
int b = 0;
for (int i : map.values())
if (i == a)
b++;
return b;
}
}
в
public class A
{
// ...
public int getA()
{
return a;
}
public Collection<Integer> getValues()
{
return map.values();
}
public static int calcSomthing(A obj)
{
int b = 0;
for (int i : obj.getValues())
if (i == obj.getA())
b++;
return b;
}
}
Если учитывать, что объектов много, скажем тысяч 50.
Или смыл будет только, если, выносить в static те методы, которые изначально не обращается напрямую к переменным класса, а используют только другие методы класса?
public class A
{
private final int a;
private final Map<Integer, Integer> map;
public A(int a)
{
this.a = a;
this.map = new HashMap<Integer, Integer>();
}
public int calcSomthing()
{
int b = 0;
for (int i : map.values())
if (i == a)
b++;
return b;
}
}public class A
{
// ...
public int getA()
{
return a;
}
public Collection<Integer> getValues()
{
return map.values();
}
public static int calcSomthing(A obj)
{
int b = 0;
for (int i : obj.getValues())
if (i == obj.getA())
b++;
return b;
}
}
Как заставить браузер не кешировать JavaScript?
Существует ли какой-то действенный способ заставить браузер не кешировать конкретный Javascript файл? Желательно чтобы этот способ работал в Firefox, Opera и Chrome (IE особо не интересует).
Хорошую литературу по Tapestry, Hibernate, Tomcat, Spring IoC (& MVC)?
Не все книжки одинаково полезны (referenc'ы и tutorial'ы тоже), поэтому собственно сабж
Распространенность JVM
Нужен примерный процент распространенности JVM на десктопах.
Будет еще лучше если найдутся данные по платформам.
Знаю что JVM уже есть «из коробки» в большинстве популярных дистров Linux, а также на MacOS. А вот как дело обстоит на Windows? Особенно на ХР с разными сервис-паками.
Оставлять логику PHP или отдавать JavaScript'у?
Пишу тизерную сеть и немного мучаюсь в сомнениях:
на рекламной площадке размещается код типа <script type=«text/javascript» src=«someurl.com/site_id/block_id»></script>
который, разумеется, подгружает уже полный JS-код для генерации тизерного блока.
Вот я и думаю — передавать клиенту уже отрендеренный блок (логика в php), или отдавать только данные блока в, например, JSON-формате, а рендерить его средствами JS (логика в JS)?
Почему персональный блог закрыт
Некоторое время назад обнаружил, что не могу публиковать посты на Хабре.
При написании нового поста вижу красное сообщение что-то типа «пост будет опубликован в закрытом блоге и доступен только подписчикам».
Так же вижу несколько иконок замков.
Я вполне допускаю, что видимо на Хабре есть некие (не известные мне) правила по которым что-то произошло с моим персональным блогом.
Моя проблема заключается в том, что:
1) мне абсолютно не понятно что произошло. Нигде на Хабре никаких разъяснений найти не удалось. Карма и рейтинг положительные, хотя и их смысл не очень понятен.
2) не понятен смысл иконок замков. Например было бы логично если бы кликнув по нему я перешел на страницу объясняющую ситуацию. Но этого нет.
3) не понятно сколько пользователей все же увидят мой пост если я его опубликую сейчас — может меня бы устроило например и 1000 просмотров?
4) не понятно вернется ли мне когда нибудь способность нормально публиковать посты если карма все же вырастет. До какого уровня она должна вырасти чтобы замки были сняты? Или это безвозвратный процесс?
Или проще бросить мой аккаунт и написать новый пост в Песочницу и получить новый инвайт?
Спасибо за разъяснения!
PS: и да, спасибо за первые минусы, которые помогают новичку лучше разобраться с ситуацией
Как запретить вызов Tomcat в обход предваряющего его Apache HTTP server?
Установлено так: сервер Apache сидит на 80-ом порту и при запросах *.jsp редиректит через mod_jk на Tomcat, который на 8080. И все работает нормально, но вот вопрос, а как быть с портом 8080 на котором крутится Tomcat? Ведь кто-нибудь может вместо example.com набрать example.com:8080 и таким образом обойти Apach! Я имею ввиду преднамеренные действия пользователя.
Просто сменить порт на какой-либо другой я считаю не выход.
Как заставить документы JSP(jspx) сохранять форматирование конечного HTML?
Документы JSP(те, что с синтаксисом XML и расширением .jspx) при генерации результирующего HTML удаляют всё форматирование. Вся html-разметка просто в строку пишется.
Как настроить так, что бы документы jspx сохраняли форматирование подобно простым JSP страничкам?
Сервис продажи за выбранную сумму рублей
Была как-то на хабре статья про новый способ продажи товаров через интернет по цене покупателя. Тоесть покупатель сам указывает за сколько хочет купить товар. Речь шла об электронных товарах.
Не подскажите ли где это можно найти?
P.S.: перерыл уже весь поиск, не могу найти!
Хранение криптованных данных в БД, (де)криптование на клиенте
Есть данные, которые хранятся в MySQL и html-страница, в которой происходит просмотр и редактирование данных посредством JS+AJAX. Нужно реорганизовать схему таким образом, чтобы данные хранимые в БД были «нечитаемы», а«читаемы» были только по ключу на «клиенте». Желательно не отходить от MySQL/PHP на сервере и JS+AJAX на клиенте.
Интересует направление в котором рыть: идеология, технологии…
Спасибо.
Vkontakte open api и проблема с правами?
Никак не могу разобраться как выставить права приложению. Вроде бы все просто:
Подключаем в хедере
<script src="http://vk.antizapret.ru/js/api/xd_connection.js?2" type="text/javascript"></script><br/>
<script src="http://vkontakte.ru/js/api/openapi.js" type="text/javascript"></script><br/>
Далее пишем в body
<script type="text/javascript"><br/>
<br/>
VK.init({<br/>
apiId: my_id<br/>
});<br/>
<br/>
VK.UI.button('login_button');<br/>
<br/>
VK.callMethod('showInstallBox',0);<br/>
</script><br/>
<br/>
Авторизация проходит нормально, все апи через VK.api выполняются нормально, но как только хочу вызвать showInstallBox появляется ошибка
TypeError: Result of expression 'options' [undefined] is not an object. vkontakte.ru/js/api/openapi.js:317
Так же пробовал вызывать по onClick, после полной загрузки страницы, то же самое.
Что я делаю не так? Может что-то не подключил? Может не так вызываю?
Заранее благодарю.
<script src="http://vk.antizapret.ru/js/api/xd_connection.js?2" type="text/javascript"></script><br/>
<script src="http://vkontakte.ru/js/api/openapi.js" type="text/javascript"></script><br/><script type="text/javascript"><br/>
<br/>
VK.init({<br/>
apiId: my_id<br/>
});<br/>
<br/>
VK.UI.button('login_button');<br/>
<br/>
VK.callMethod('showInstallBox',0);<br/>
</script><br/>
<br/>TypeError: Result of expression 'options' [undefined] is not an object. vkontakte.ru/js/api/openapi.js:317
Сотовый за USD $2953.57? [решено: это терминал сбора данных]
А что такого крутого в Symbol MC75 что телефон стоит аж USD $2953.57?
Неужели все из-за сканера штрихкодов?
Какой интернет ресурс популярен у вас в городе?
Интересны именно городские, а не общероссийские интернет ресурсы. Буду благодарен за ссылки. Спасибо.
Сколько бэдблоков приводит к смерти
Неделю назад купил себе 500Г диск WesternDigital.
При копировании на него архива музыки пошли «странные эффекты».
Дисковая утилита показывает «на диске несколько битых секторов»
«Кол-во перераспределенных секторов» 178, порог 140(странно что не 0)
диск занят на 70 гигабайт. Проверка поверхности (через смарт) не выявило доп проблемы.
Статус смарта — зеленых(как не странно)
Менять или забить?
Online IDE for Java development
Собственно ищу сабж. Пока нашел только compilr.com, но там слишком мало функционала, да и вообще я там так и не дождался пока скомпилится стандартный пример :) Желательно, чтобы там автокомплит был и прочие радости.
не видно иконку сети в убунту
стоит убунту 10.10 не видно иконку(2 мигающих монитора) сетевых соединений в «трее» как сделать чтоб появилась?
Где найти волонтеров для разработки международного некоммерческого благотворительного проекта?
Есть задумка достаточно масштабного и как мне кажется очень важного проекта. Уверен, что смогу прилечь инвестиции. Ищу людей с которыми можно сделать альфу. Наверно есть российские и западные сообщества объединяющие дизайнеров и программистов готовых принять участие внешних проектах.
Буду благодарен за линки.
Что означает контрукция типа “(function(d){ ... })(document)”
Неоднократно встречал подобную контструкцию:
(function (d) {
// Какой-то код
})(document);
Мне понятно, что данном коде используется замыкание, но не понятно зачем в качестве аргумента замкнутой функции передаёться объект Document.
Вот конкретный пример — маленькая Javascript утилита, которая далает так, чтобы в IE можно было задавать стили HTML5 элементам (таким как section, header, article и прочие; по умолчанию стили для этих элементов в IE будут игнорироваться). В этом скрипте используется следующая конструкция:
(function (p, e) {
// Какой-то код
})(this, document);
В этом примере помимо аргумента document ещё в добавок передаётся аргумент this, в котором, как я понимаю, хранится объект Window. Кто может мне подсказать зачем замкнутым функциям передавать в качастве аргуметов Document и Window?
// Какой-то код
})(document);
// Какой-то код
})(this, document);
Материалы по работе с JS в IE
Доброго дня!
Подскажите, пожалуйста, может есть книга какая, или ресурс, где была бы собрана воедино вся информация (ну вернее как можно больше) по написанию кроссбраузерного JS. А то все, что нахожу, как бы гордо себя ни позиционировало — обычно очередной копипаст одних и тех же «трюков». Причем интересуют материалы не по JS в целом, а именно те материалы, где рассказывается, как в IE делать нельзя, а как делать можно только в IE :)
Где найти стандарт работы getElementById?
В общем вопрос простой. Почему, при добавлении в документ 2х элементов с одним id, берется первый элемент, а не второй?
PS Понимаю что за это надо руки отрывать, но всё-же…
<font color="black"><font color="#0000ff"><</font><font color="#800000">html</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">head</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">title</font><font color="#0000ff">></</font><font color="#800000">title</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">script</font> <font color="#ff0000">type</font><font color="#0000ff">="text/javascript"</font><font color="#0000ff">></font><br/>
<font color="#0000ff">function</font> ondivclick() {<br/>
<font color="#0000ff">document</font>.getElementById(<font color="#A31515">"place"</font>).innerHTML += <font color="#A31515">"1"</font>;<br/>
<font color="#0000ff">document</font>.getElementById(<font color="#A31515">"place"</font>).innerHTML += <font color="#A31515">"2"</font>;<br/>
alert(<font color="#0000ff">document</font>.getElementById(<font color="#A31515">"divid"</font>).innerHTML); <font color="#008000">// тут на всех браузерах будет 1</font><br/>
}<br/>
<font color="#0000ff"></</font><font color="#800000">script</font><font color="#0000ff">></font><br/>
<font color="#0000ff"></</font><font color="#800000">head</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">body</font><font color="#0000ff">></font> <br/>
<font color="#0000ff"><</font><font color="#800000">a</font> <font color="#ff0000">href</font><font color="#0000ff">="#"</font> <font color="#ff0000">onclick</font><font color="#0000ff">="ondivclick()"</font><font color="#0000ff">></font>Go!<font color="#0000ff"></</font><font color="#800000">a</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">div</font> <font color="#ff0000">id</font><font color="#0000ff">="place"</font><font color="#0000ff">></</font><font color="#800000">div</font><font color="#0000ff">></font><br/>
<font color="#0000ff"></</font><font color="#800000">body</font><font color="#0000ff">></font><br/>
<font color="#0000ff"></</font><font color="#800000">html</font><font color="#0000ff">></font></font><br/>
<br/>
<font color="gray">* This source code was highlighted with <a href="http://virtser.net/blog/post/source-code-highlighter.aspx"><font color="gray">Source Code Highlighter</font></a>.</font>
<font color="black"><font color="#0000ff"><</font><font color="#800000">html</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">head</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">title</font><font color="#0000ff">></</font><font color="#800000">title</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">script</font> <font color="#ff0000">type</font><font color="#0000ff">="text/javascript"</font><font color="#0000ff">></font><br/>
<font color="#0000ff">function</font> ondivclick() {<br/>
<font color="#0000ff">document</font>.getElementById(<font color="#A31515">"place"</font>).innerHTML += <font color="#A31515">"1"</font>;<br/>
<font color="#0000ff">document</font>.getElementById(<font color="#A31515">"place"</font>).innerHTML += <font color="#A31515">"2"</font>;<br/>
alert(<font color="#0000ff">document</font>.getElementById(<font color="#A31515">"divid"</font>).innerHTML); <font color="#008000">// тут на всех браузерах будет 1</font><br/>
}<br/>
<font color="#0000ff"></</font><font color="#800000">script</font><font color="#0000ff">></font><br/>
<font color="#0000ff"></</font><font color="#800000">head</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">body</font><font color="#0000ff">></font> <br/>
<font color="#0000ff"><</font><font color="#800000">a</font> <font color="#ff0000">href</font><font color="#0000ff">="#"</font> <font color="#ff0000">onclick</font><font color="#0000ff">="ondivclick()"</font><font color="#0000ff">></font>Go!<font color="#0000ff"></</font><font color="#800000">a</font><font color="#0000ff">></font><br/>
<font color="#0000ff"><</font><font color="#800000">div</font> <font color="#ff0000">id</font><font color="#0000ff">="place"</font><font color="#0000ff">></</font><font color="#800000">div</font><font color="#0000ff">></font><br/>
<font color="#0000ff"></</font><font color="#800000">body</font><font color="#0000ff">></font><br/>
<font color="#0000ff"></</font><font color="#800000">html</font><font color="#0000ff">></font></font><br/>
<br/>
<font color="gray">* This source code was highlighted with <a href="http://virtser.net/blog/post/source-code-highlighter.aspx"><font color="gray">Source Code Highlighter</font></a>.</font>
Изменение стиля при помощи javascript
Кто может подсказать как решить задачку
есть 5 блоков div у каждого свой id и стиль b-img
<div id="1" class="b-img" onclick="kodimg(id)">...</div>
<div id="2" class="b-img" onclick="kodimg(id)">...</div>
<div id="3" class="b-img" onclick="kodimg(id)">...</div>
<div id="4" class="b-img" onclick="kodimg(id)">...</div>
<div id="5" class="b-img" onclick="kodimg(id)">...</div>
при клике по нему ява скрипт меняет ему стиль на v-img
вот такой функцией
function kodimg(id)
{
document.getElementById(id).className = 'v-img';
}
проблема в том, что у предыдущего нажатого div стиль остается v-img, а нужно чтоб он снова стал b-img
Как такое можно сделать?
<div id="1" class="b-img" onclick="kodimg(id)">...</div>
<div id="2" class="b-img" onclick="kodimg(id)">...</div>
<div id="3" class="b-img" onclick="kodimg(id)">...</div>
<div id="4" class="b-img" onclick="kodimg(id)">...</div>
<div id="5" class="b-img" onclick="kodimg(id)">...</div>
function kodimg(id)
{
document.getElementById(id).className = 'v-img';
}
Как растянуть изображение на канве *без* сглаживания (в webkit)
Надо увеличить изображение в 2, 3, 4 и т.д. раз, причём, чтоб сохранялась пикселизация.
Что пробовал:
1) через css увеличить размер канвы. +) быстро -) есть сглаживание
2) mozImageSmoothingEnabled=false; drawImage(...). +) бысто, без сглаживания -) gecko only
3) getImageData/putImageData и увеличение руками. +) без сглаживания -) очевидно, медленней чем нативные методы.
Использую способ №3, в моём случае (раз-loop-ленные циклы, update по регионам) работает мгновенно.
Но!
В последнее время много говорят о смерти флеша и о безоговорочной победе html5. Так вот, во flash можно выключить сглаживание, а как же великий и могучий html5? Неужели в этом гиганте, убивающем флэш наповал, нельзя сделать такой вот примитив (т.е. чтоб кроссбраузерно)?
p.s. в некоторых местах забыл расставить тэги sarcasm.
Один localStorage на все поддомены. Нельзя, но может всё-таки можно?
Имеется многоязычный проект. Каждому языку соответствует поддомен, а также есть специальные поддомены для статики и особых версий (примерно как на Википедии):
en.example.com<br/>
ru.example.com<br/>
...<br/>
static.example.com<br/>
m.example.com<br/>
fb.example.com<br/>
vk.example.com<br/>
...<br/>
У пользователей во время работы будут накапливаться данные, которые в принципе не нужны на серверной стороне, плюс этих данных может быть больше, чем на 4 KБ, т. е. куки использовать не желательно.
HTML 5 localStorage, казалось бы, подходит идеально, но есть одно большое «но»: данные, сохранённые для одного поддомена, не видны на всех остальных поддоменах согласно спецификации из соображений безопасности.
Не могли бы вы, уважаемые хабровчане, посоветовать, каким образом можно осуществить местное хранение данных в таком случае? Сталкивался ли кто-то ещё с подобной проблемой, успешно решив её? Может быть, стоит каким-либо образом использовать iFrame, хранить localStorage там и «общаться» с ним? Есть ли какие-то другие подходы в решении этой задачи?
en.example.com<br/>
ru.example.com<br/>
...<br/>
static.example.com<br/>
m.example.com<br/>
fb.example.com<br/>
vk.example.com<br/>
...<br/>
Большая нагрузка на браузер при вкл jquery
Добрый день. Подскажите пожалуйста как решить такую проблему. Установил на сайт плагин лупы для изображений. Все подключается и работает, но так как это интернет магазин на одной странице может находиться до 20 картинок и когда наводится мышка на одно из изображений запускается функция для всей страницы. Каким образом можно ее ограничить только одной картинкой? Навел — загрузилась картинка — подключилась функция — убрал мышку — отключилась и так по кругу…
вот какую функция я смог прописать для включения библиотеки:
<script type=\'text/javascript\'>
$(document).ready(function(){
$(\'#zoom1\').hover(function(){
$.getscript(\'js/cloud-zoom.1.0.2.min.js\', function(){
testAjax();
});
})
});
</script>
ссылка на лупу: www.professorcloud.com/mainsite/cloud-zoom.htm
З.Ы. Просто подключить лупу в хэдер как написано в примере не получится, потому что вывод каталога на сайте сделан целиком на аяксе.
$(document).ready(function(){
$(\'#zoom1\').hover(function(){
$.getscript(\'js/cloud-zoom.1.0.2.min.js\', function(){
testAjax();
});
})
});
</script>
Hover-state отдельных областей canvas
Здравствуйте! Возникла проблема реализации hover-state отдельных областей canvas.
Предположим, что на холсте 40х80 два квадрата по 40 пикселов. Понять, какую именно область подсвечивать (при назначении обработчика mousemove) проблем не представляет, проблема в том, чтобы изменять (например, затемнять) область надо лишь 1 раз, и когда указатель покинул нужное пространство возвратить исходный вид области. Прошу прощения, если вопрос глуп — я только осваиваю canvas. Заранее спасибо за советы.
Qooxdoo: создать и запустить source-версию под денвером?
Как правильно создать каркас приложения на Qooxdoo чтобы source-версию приложения можно было запускать через _localhost/app а не _Z:\home\localhost\www\app\index.html?
Скомпилированная Build-версия отлично запускается с вебсервера (denwer). Но нужно запускать именно Source-версию. Мало того что нужен дебаг приложения, так еще и не получается в рабочем режиме отрабатывать ajax, приходится делать через jsonp (чтобы работать с кроссдоменными запросами). То же самое с флешовым построителем графиков: хочет только обращения из домена. Ну и так, по мелочам.
Спасибо.
Возврат заполненного command object?
Используется Spring MVC, примерный код представлен ниже:
Методы контроллера
/*<br/>
* Создание нового объекта и его инициализация.<br/>
*/ <br/>
@RequestMapping(value = "/new", method = RequestMethod.GET)<br/>
public String newObject(Model model) {<br/>
Сitizen citizen= citizenDao.getNewObject();<br/>
citizen.setIsLoyalToTheParty(true);<br/>
model.addAttribute("citizen", citizen);<br/>
return "CitizenForm";<br/>
}<br/>
<br/>
/*<br/>
* Обработка заполненной формы.<br/>
*/<br/>
@RequestMapping(value = "/onSubmit", method = RequestMethod.POST)<br/>
public String onSubmit(Сitizen citizen, BindingResult result, SessionStatus status, Model model) {<br/>
citizenValidator.validate(citizen, result);<br/>
if (result.hasErrors()) {<br/>
return "СitizenForm";<br/>
} else {<br/>
citizenDao.save(citizen);<br/>
status.setComplete();<br/>
return "successView"; <br/>
}<br/>
}<br/>
Сущность:
@Entity<br/>
@Table(name = "ASD_CIT")<br/>
public class Citizen implements Serializable {<br/>
@Id<br/>
private Long id;<br/>
private String firstName;<br/>
private String secondName;<br/>
private boolean IsLoyalToTheParty;<br/>
<br/>
public Citizen(){<br/>
}<br/>
<br/>
public String getFirstName() {<br/>
return firstName;<br/>
}<br/>
<br/>
public void setFirstName(String firstName) {<br/>
this.firstName = firstName;<br/>
}<br/>
<br/>
public String getSecondName() {<br/>
return secondName;<br/>
}<br/>
<br/>
public void setSecondName(String secondName) {<br/>
this.secondName = secondName;<br/>
}<br/>
<br/>
public boolean isIsLoyalToTheParty() {<br/>
return IsLoyalToTheParty;<br/>
}<br/>
<br/>
public void setIsLoyalToTheParty(boolean IsLoyalToTheParty) {<br/>
this.IsLoyalToTheParty = IsLoyalToTheParty;<br/>
}<br/>
<br/>
public Long getId() {<br/>
return id;<br/>
}<br/>
<br/>
public void setId(Long id) {<br/>
this.id = id;<br/>
}<br/>
}<br/>
И, наконец, форма:
<form:form commandName="citizen" method="post" action="onSubmit"><br/>
<form:hidden path="id" id="id"/><br/>
<form:input path="firstName" id="firstName"/><br/>
<form:input path="secondName" id="secondName"/><br/>
</form:form><br/>
Как вы видите в коде формы нет поля для свойства IsLoyalToTheParty — оно устанавливается при создании объекта и его редактирование в форме не предусмотрено.
Вопрос следующий: в представленном случае значение свойства IsLoyalToTheParty потеряется на пути Котроллер -> Форма -> Контроллер. Если же я создам «hidden» поле в форме для этого свойства, то оно не потеряется. Но так как реальные объекты состоят из гораздо большего кол-ва таких свойств не хотелось бы на форме создавать поля для этих свойств. Как заставить возвращать из формы именно тот объект, который был передан ей изначально?
/*<br/>
* Создание нового объекта и его инициализация.<br/>
*/ <br/>
@RequestMapping(value = "/new", method = RequestMethod.GET)<br/>
public String newObject(Model model) {<br/>
Сitizen citizen= citizenDao.getNewObject();<br/>
citizen.setIsLoyalToTheParty(true);<br/>
model.addAttribute("citizen", citizen);<br/>
return "CitizenForm";<br/>
}<br/>
<br/>
/*<br/>
* Обработка заполненной формы.<br/>
*/<br/>
@RequestMapping(value = "/onSubmit", method = RequestMethod.POST)<br/>
public String onSubmit(Сitizen citizen, BindingResult result, SessionStatus status, Model model) {<br/>
citizenValidator.validate(citizen, result);<br/>
if (result.hasErrors()) {<br/>
return "СitizenForm";<br/>
} else {<br/>
citizenDao.save(citizen);<br/>
status.setComplete();<br/>
return "successView"; <br/>
}<br/>
}<br/>@Entity<br/>
@Table(name = "ASD_CIT")<br/>
public class Citizen implements Serializable {<br/>
@Id<br/>
private Long id;<br/>
private String firstName;<br/>
private String secondName;<br/>
private boolean IsLoyalToTheParty;<br/>
<br/>
public Citizen(){<br/>
}<br/>
<br/>
public String getFirstName() {<br/>
return firstName;<br/>
}<br/>
<br/>
public void setFirstName(String firstName) {<br/>
this.firstName = firstName;<br/>
}<br/>
<br/>
public String getSecondName() {<br/>
return secondName;<br/>
}<br/>
<br/>
public void setSecondName(String secondName) {<br/>
this.secondName = secondName;<br/>
}<br/>
<br/>
public boolean isIsLoyalToTheParty() {<br/>
return IsLoyalToTheParty;<br/>
}<br/>
<br/>
public void setIsLoyalToTheParty(boolean IsLoyalToTheParty) {<br/>
this.IsLoyalToTheParty = IsLoyalToTheParty;<br/>
}<br/>
<br/>
public Long getId() {<br/>
return id;<br/>
}<br/>
<br/>
public void setId(Long id) {<br/>
this.id = id;<br/>
}<br/>
}<br/><form:form commandName="citizen" method="post" action="onSubmit"><br/>
<form:hidden path="id" id="id"/><br/>
<form:input path="firstName" id="firstName"/><br/>
<form:input path="secondName" id="secondName"/><br/>
</form:form><br/>
ZK — обучающие статьи?
Хочу начать писать цикл статей об этой технологии ZK. Написал вводную статью кратенький обзор Статья. Вопрос стоит ли писать дальше интересна ли кому эта тема? Если да то буду делится опытом и с удовольствием послушаю и приму советы тех кто уже пользовался этой технологией.
Произвести модификацию в jQuery UI и получить сжатый вариант?
Некоторое время назад я писал о том, что пишу некий «аналог jQuery Treeview». Благодаря подсказке nikitammf проблему «отпрыгивающего элемента» я поборол.
Но появилась другая проблема. Чтобы описать её, я сначала объясню каким образом плагин jQuery UI Draggable определяет находится ли в данный момент переносимый элемент над droppable-элементом.
В момент начала переноса захваченного элемента вызывается метод $.ui.ddmanager.prepareOffsets(this, event) (строка 152 файла /development-bundle/ui/jquery.ui.draggable.js). Этот метод запоминает в кэше абсолютные координаты всех droppable-элементов. Затем в процессе переноса draggable-элемента, его меняющиеся координаты постоянно сверяются с координатами droppable-элементов из кэша, и когда наступает пересечение координат — плагин опознаёт, что захваченный элемент оказался над тем-то droppable-элементом (т.е. наступает событие «hover»). Кэш координат droppable-элементов всегда рассчитывается только один раз — в момент начала переноса захваченного элемента.
Как это конфликтует с моим кодом? Как я уже писал, в момент наступления события «hover» у меня отсылается запрос на сервер, который возвращает список дочерних элементов, которые вставляются вложенным списком. Поскольку вставляется вложенный список, координаты последующих (лежащих ниже) droppable-элементов при этом меняются, но кэш координат об этом не знает.
В результате если захватить самый первый элемент, задержать над вторым элементом (дождавшись появления вложенного списка) и дальше вести его вниз, то третий и последующий элементы среагируют ещё задолго до того, как перетаскиваемый элемент реально окажется над ними (потому что в кэше координат остались старые координаты и он по-прежнему думает, что все droppable-элементы остались на своих изначальных местах).
Как решить эту проблему, впринципе понятно: пересчитать кэш координат (вызвать метод $.ui.ddmanager.prepareOffsets(this, event)) после вставки дочернего списка.
Но так просто вызвать этот метод не получается: его имя уже изменено в процессе компоновки и минимизации конструктором jQuery UI (я использую не гигантский архив с кучей js-файлов, а собранный конструктором один файл).
Как здесь быть? Как вызвать метод, имя которого уже «обфусцировано»?
Онлайн-пример собственно моей разработки тут.
"Резиновость" элементов js
Есть ли способ определить, что размер какого-либо элемента страницы задан в %? в DOM как я понимаю, хранятся уже вычисленные значения, автоматически пересчитываемые при ресайзе.
Можно поставить вопрос иначе: можно ли каким либо образом изменять такие автоматически вычисленные размеры без потери «резиновости»?
Странное поведение generics в Java?
Писал какую-то обобщённую жесть, и вот внезапно Java отказалась компилить код, хотя казалось бы всё нормально.
Вкратце, что тут происходит:
Transformable — параметризованный интерфейс, параметризован он для того, чтобы реализующие классы могли указать тип результата трансформации.
Метод test накладывает ограничение на тип передаваемого объекта, которые на человеческий язык можно перевести как «объект input содержит метод transform, с возвращаемым значением типа «какой-то подтип I»»
Таким образом transform () вернёт объект, совместимый с типом I. И у возвращённого объекта можно снова вызвать метод transform ().
Если я делаю это через промежуточные переменные, то всё работает, а в одну строку — не компилируется, хотя суть то не меняется.
Что не так?
<font color="black"><ol>
<li> </li>
<li><font color="#000000"><b>class</b></font> Main <font color="#009900">{</font></li>
<li> </li>
<li> <font color="#008000"><i><b>/**</b></i></font></li>
<li><font color="#008000"><i><b> * @param <T></b></i></font></li>
<li><font color="#008000"><i><b> * transformation result type</b></i></font></li>
<li><font color="#008000"><i><b> * </b></i></font></li>
<li><font color="#008000"><i><b> */</b></i></font></li>
<li> <font color="#000000"><b>public</b></font> <font color="#000000"><b>interface</b></font> Transformable<font color="#339933"><</font>T <font color="#000000"><b>extends</b></font> Transformable<font color="#339933"><?>></font> <font color="#009900">{</font></li>
<li> T transform<font color="#009900">(</font><font color="#009900">)</font><font color="#339933">;</font></li>
<li> <font color="#009900">}</font></li>
<li> </li>
<li> <font color="#339933"><</font>I <font color="#000000"><b>extends</b></font> Transformable<font color="#339933"><?</font> <font color="#000000"><b>extends</b></font> I<font color="#339933">>></font> I test<font color="#009900">(</font><font color="#000000"><b>final</b></font> I input<font color="#009900">)</font> <font color="#009900">{</font></li>
<li> </li>
<li> <font color="#000000"><b>final</b></font> I ans <font color="#339933">=</font> input.<font color="#006633">transform</font><font color="#009900">(</font><font color="#009900">)</font>.<font color="#006633">transform</font><font color="#009900">(</font><font color="#009900">)</font><font color="#339933">;</font> <font color="#666666"><i>// can't compile!</i></font></li>
<li> </li>
<li> <font color="#666666"><i>// final I ans1 = input.transform();</i></font></li>
<li> <font color="#666666"><i>// final I ans = ans1.transform(); // works!</i></font></li>
<li> </li>
<li> <font color="#000000"><b>return</b></font> ans<font color="#339933">;</font></li>
<li> <font color="#009900">}</font></li>
<li> </li>
<li><font color="#009900">}</font></li>
<li> </li>
<li> </li>
</ol></font>
______________________
<font color="black"><ol>
<li> </li>
<li><font color="#000000"><b>class</b></font> Main <font color="#009900">{</font></li>
<li> </li>
<li> <font color="#008000"><i><b>/**</b></i></font></li>
<li><font color="#008000"><i><b> * @param <T></b></i></font></li>
<li><font color="#008000"><i><b> * transformation result type</b></i></font></li>
<li><font color="#008000"><i><b> * </b></i></font></li>
<li><font color="#008000"><i><b> */</b></i></font></li>
<li> <font color="#000000"><b>public</b></font> <font color="#000000"><b>interface</b></font> Transformable<font color="#339933"><</font>T <font color="#000000"><b>extends</b></font> Transformable<font color="#339933"><?>></font> <font color="#009900">{</font></li>
<li> T transform<font color="#009900">(</font><font color="#009900">)</font><font color="#339933">;</font></li>
<li> <font color="#009900">}</font></li>
<li> </li>
<li> <font color="#339933"><</font>I <font color="#000000"><b>extends</b></font> Transformable<font color="#339933"><?</font> <font color="#000000"><b>extends</b></font> I<font color="#339933">>></font> I test<font color="#009900">(</font><font color="#000000"><b>final</b></font> I input<font color="#009900">)</font> <font color="#009900">{</font></li>
<li> </li>
<li> <font color="#000000"><b>final</b></font> I ans <font color="#339933">=</font> input.<font color="#006633">transform</font><font color="#009900">(</font><font color="#009900">)</font>.<font color="#006633">transform</font><font color="#009900">(</font><font color="#009900">)</font><font color="#339933">;</font> <font color="#666666"><i>// can't compile!</i></font></li>
<li> </li>
<li> <font color="#666666"><i>// final I ans1 = input.transform();</i></font></li>
<li> <font color="#666666"><i>// final I ans = ans1.transform(); // works!</i></font></li>
<li> </li>
<li> <font color="#000000"><b>return</b></font> ans<font color="#339933">;</font></li>
<li> <font color="#009900">}</font></li>
<li> </li>
<li><font color="#009900">}</font></li>
<li> </li>
<li> </li>
</ol></font>
Есть ли аналог JavaScript под WAP?
Нужно сделать таймер обратного отсчета, но насколько я понимаю, Javascript не шибко поддерживается протоколом WAP. В википедии нашел абзац, где сказано что есть аналог javascript под WAP. Подскажите, куда копать, пожалуйста.
Непонятное поведение Javascript в простых ситуациях. Растолкуйте
Мне конечно после C++ сложно бывает находить подобные ошибки в коде. Но все таки: чем объясняется подобное поведение JS?
Пример первый. В обоих случаях ожидалось true:
var flag = true;
flag &= true;
alert(flag);//говорит "1"
var flag = true;
flag = flag && true;
alert(flag);//говорит "true"
Примет второй. Сравнение на «равенство» двух объектов-дат всегда возвращает false. При этом <= и < возвращают разные значения. Непонятно.
alert(new Date == new Date);//говорит "false"
alert(new Date <= new Date);//говорит "true"
alert(new Date >= new Date);//говорит "true"
alert(new Date < new Date);//говорит "false"
alert(new Date > new Date);//говорит "false"
flag &= true;
alert(flag);//говорит "1"
var flag = true;
flag = flag && true;
alert(flag);//говорит "true"
alert(new Date <= new Date);//говорит "true"
alert(new Date >= new Date);//говорит "true"
alert(new Date < new Date);//говорит "false"
alert(new Date > new Date);//говорит "false"
Как автоматически вытащить и модифицировать ссылку на изображение из исходного кода страницы?
Подскажите, пожалуйста, как вытащить и модифицировать ссылку на изображение из исходного кода страницы? Желательно через userscript для оперы.
Цель: фото товаров, например — direct.asda.com/george/shoes/ladies-shoes/boots/fa...
В коде можно обнаружить прямую ссылку на изображение — http://asda.scene7.com/is/image/Asda/5052341219998...
Если изменить параметр ?hei=400 на ?hei=2000 то картинка отдается в максимальном размере, пример — http://asda.scene7.com/is/image/Asda/5052341219998...
Внимание, знатоки, вопрос :)
Как это дело автоматизировать через userjs для оперы, чтобы, например, рядом с фото товара появлялась ссылка, которая вела бы на картинку максимального размера, дабы её удобно было сохранить?
Всем заранее спасибо!
Unicode(кириллица) в URL Java, Android
Подскажите как в Java, при разработке под Android преобразовать строку с кириллицей в нечто подобное: "%D0%B3%D1%80%D1%83%D0%BF%D0%BF%D0%B0".
В примере выше зашифровано слово «группа».
Все это нужно для использовании в URL для запроса html странички.
Спасибо!
Вызов python3 скрипта из java?
Пользуюсь на домашнем сервачке для скачки торрентов uTorrent for Linux.
Он имеет один большой (для меня) недостаток — в нем нет возможности определить, в какую папку загружать данный конкретный торрент.
Есть скрипт на python3, который помогает решить эту задачу.
Здесь находится ветка его обсуждения.
Хотел написать к нему небольшую десктопную морду, в которой можно будет ввести абсолютный путь на сервере, куда сохранять, выбрать торрент, который скачивать и вводить логин-пароль для сервера.
Столкнулся с тем, что не знаю, как вызывать питонский скрипт из джавы.
Прошу помощи.
Посоветуйте java web framework
Выпал не надолго из java WORD
Нужен быстрый как в плане производительности так и разработки фреймворк.
Для разработки каталога и внутреннего поиска по документам…
Так же интересует рельсы, джанго и граалис(скорость разработки на них по быстрее будет), но тут встаёт вопрос производительности!!! как они по сравнению с java в общих чертах?
Стоит ли сейчас python-щику изучать Java или C++?
Заранеее извиняюсь, если вопрос покажется холиварным.
Поэтому прошу без эмоций.
Собственно ситуация следующая:
знаю python и django 2 года,
но хочется выучить статически-компилируемый язык, да и в целом чего-то более серьезного.
Область: web server-side.
В общем-то все бы ничего, python очень хорош, но вакансий мало.
В будущем планирую зарубеж, поэтому по вакансиям ориентируюсь на:
www.monster.com/
www.dice.com/
по java/c++ в десятки раз вакансий больше.
Начал изучать java, но в свете последних непонятных событий с java желание слегка убавляется.
Прошу помощи у сообщества, хотелось бы услышать советы в какую сторону стоит копать,
нужно что-либо кроссплатформенное (поэтому .NET отпадает).
c++ не знаю, и по алгоритмам в общем-то тоже не особо силен.
пока видятся следующие претенденты на ближайшее изучение:
— java (собственное стоит ли бояться за ее будущее?)
— c++
— c
— go
— erlang
— c#
Спасибо за любую информацию.
Java: jar и exe?
Почему джавовские приложения имеют собственный формат файлов (jar/ear/war), а не exe? Потому что Sun так когда-то захотела или тому были объективные (технические?) причины? CLR же запускает exe'шнички спокойно.
Facebook API friends.get?
Добрый вечер.
Проблема с апи фейсбука, и с функцией friends.get (uid ). В момент авторизации через ФБ на моем сайте запрашиваются расширенные права
FB.login(handleSessionResponse, {<br/>
// <a href="http://developers.facebook.com/docs/authentication/permissions">developers.facebook.com/docs/authentication/permissions</a><br/>
perms: [<br/>
'offline_access',<br/>
'user_about_me',<br/>
'friends_about_me',<br/>
'friends_interests',<br/>
'user_interests',<br/>
'friends_location',<br/>
'user_location',<br/>
'friends_online_presence',<br/>
'user_online_presence',<br/>
'email, read_stream, publish_stream, offline_access, status_update, photo_upload, create_event, rsvp_event, sms, video_upload, create_note, share_item'<br/>
].join(',')<br/>
});
И вроде бы, пользователь дает доступ к своим друзьям в офлайн режиме. Он отображается в friends.appUsers.
Но фигня вот в чем.
FB.api({ method: 'friends.get', uid: 'айди пользователя, предоставившего все права моему сайту' }, function(result) {<br/>
console.log(result)<br/>
})<br/>
Resukt выдает ошибку №240 — Requires a valid user is specified (either via the session or via the API parameter for specifying the user.
Но как так, если все полномочия пользователь сам дал, а айди задан верно? Причем это не работает не только на моем сайте, но и через тестовую консоль ФБ (где параметры в формочки вводить надо:)).
Будут какие-либо идеи?
PS Работать это должно примерно так: Пользователь П1 дает права на доступ к своим друзьям. Потом на сайт захожу я, и даю доступ к своим друзьям. Если П1 есть в моем списке друзей, то я хочу вывести список его друзей (он же дал права на офлайн доступ к его друзьям)
FB.login(handleSessionResponse, {<br/>
// <a href="http://developers.facebook.com/docs/authentication/permissions">developers.facebook.com/docs/authentication/permissions</a><br/>
perms: [<br/>
'offline_access',<br/>
'user_about_me',<br/>
'friends_about_me',<br/>
'friends_interests',<br/>
'user_interests',<br/>
'friends_location',<br/>
'user_location',<br/>
'friends_online_presence',<br/>
'user_online_presence',<br/>
'email, read_stream, publish_stream, offline_access, status_update, photo_upload, create_event, rsvp_event, sms, video_upload, create_note, share_item'<br/>
].join(',')<br/>
});FB.api({ method: 'friends.get', uid: 'айди пользователя, предоставившего все права моему сайту' }, function(result) {<br/>
console.log(result)<br/>
})<br/>
Способ присваивания переменным дефолтных значений?
Часто бывает так, что каким-либо переменным надо присвоить значение по-умолчанию, если не дано иного. Примерами могут быть необязательные аргументы функций, данные из localStorage и т. п. Есть разные способы, позволяющие это сделать, но сводятся они к одному смыслу:
проверить, присвоено ли какое-то значение / если да, то выполнять следующую задачу / если нет, то назначить дефолтное значение и выполнять следующую задачу.
Пара возможных примеров кода:
// 1-й вариант<br/>
if (!argument) argument = 'value';<br/>
<br/>
// 2-й вариант<br/>
argument = argument || 'value';
Вопрос в следующем — какой из приведенных вариантов является оптимальным? Какой из них лучше использовать?
// 1-й вариант<br/>
if (!argument) argument = 'value';<br/>
<br/>
// 2-й вариант<br/>
argument = argument || 'value';
Ресайз панелей google docs
В интерфейсе google docs (в ff и google chrome) на экране навигации по документам, если увеличить левую панель, передвинув хэндлер (синий блок между панелью папок и документов) более чем на половину экрана — не удается восстановить прежние габариты панелей в состояние по-умолчанию.
Кто сталкивался или встречал решение?
381   2   15:12, 19th August, 2020
Как работает навигация по письмам в Gmail?
В web-интерфейсе Gmail навигация по письмам сделана следующим образом:
Изначально мы на странице «Входящие»
https://mail.google.com/mail/?hl=ru&shva=1#inbox
Нажимаем на письмо и попадаем на
https://mail.google.com/mail/?hl=ru&shva=1#inbox/12c4911509040a02
При этом открывается само письмо.
Как видно, мы работаем через «решетку» #, поэтому перезагрузки страницы не происходт, вместо этого происходит переход «по якорю». Тем не менее, URL меняется, и браузер делает переход без отправки запроса на сервер, в результате чего мгновенно открывается текст письма (который уже где-то хранился в DOM и посредством JS выводится пользователю), и становится доступной кнопка «Назад» в браузере, что очевидно. Если ее нажать, мы возвращаемся к списку писем, текст письма при этом скрывается, конечно же без перезагрузки страницы, и это очень быстро работает.
Вопрос: Как это работает? Конкретно, после нажатия «Назад». Ведь мы работаем на одной странице, нужно как-то закрыть открытое письмо. Как работает этот механизм? Какое события обрабатывается? Надеюсь, суть вопроса ясна.
Обновление JavaScript скрипта на клиенте
Как правильно организовать подключение JS на сайте клиента, чтобы потом в любой момент скрипт JS можно было обновить и он подхватился всеми клиентами, т.е. сбросилось бы кеширование браузером? JS, например, код подключения какого то виджета.
Нужно для того, чтобы при каждом обновлении скрипта не просить клиентов обновить его код подключения на своих сайтах.
Выбор версии Spring
Здравствуйте!
Дали на днях небольшое задание по написанию веб-приложения на java. В задании указано, что выполнить необходимо на spring версии >= 2.5.
Опыта написания веб-приложений почти никакого. Разве что щупал struts в былые годы. Не подскажете, с какого спринга следует начать изучение и на каком из них выполнить задание?
P.S. Искал в инете литературу по 3-ему спрингу. Там ее почти нет. Даже на официальном сайте tutorial еще по версии 2.5 (http://static.springsource.org/docs/Spring-MVC-step-by-step). Не посоветуете что-нибудь толковое?
Изучение нового основного языка. Java?
Возможно, мой вопрос не совсем подходит для Q&A, но это и не топик для хабра. Без предыстории на обойтись…
Около 7 лет занимаюсь программированием, около 5 лет зарабатываю этим на жизнь. После окончания университета прошло больше двух лет, а я все еще не устроился на работу, потому что увяз в собственных «проектах» (они приносят деньги, но не дают развития).
Изначально мною был сделан неудачный выбор: Delphi (windows-приложения) и PHP (веб). И тем, и другим владею на хорошем уровне.
На Delphi писал и оконные приложения (облегченный клиент для популярной MMORPG-игры), и многопоточные сервера (авторизационный сервер для той же игры), и относительно низкоуровневые библиотеки (SPI-провайдер, внешний модуль защиты клиентских приложений). Об одной своей разработке я писал на хабре: Аналог Time Machine для Windows
На PHP были разработаны как отдельные модули (личные кабинеты, админ-панели, внутренние библиотеки), так и полноценные сайты с нуля. Самый популярный ресурс на данный момент имеет около 30 тысяч уникальных посетителей в сутки (400-500 тысяч просмотренных страниц).
Само собой приходилось заниматься и администрированием (linux, apache, nginx), и работать с СУБД (MSSQL, MySQL), и писать HTML-страницы (CSS, Javascript, jQuery). Но это побочные знания, а не мой профиль.
Вчера начал изучать вакансии и понял, что оказался «в пролете» (не скажу, что это было большой неожиданностью): крупным IT-компаниям (yandex, mail, google, ...), завязанным на интернете, не нужны PHP-программисты. Работать в компании со штатом в 10 человек и делать каждую неделю очередной сайт на заказ я не хочу. Мне нравится создавать то, чем пользуются ежедневно тысячи людей. Я люблю программировать. Я хочу иметь возможность запустить браузер, загрузить страницу и сказать: «это сделал я».
Как добиться желаемого? Как попасть в Яндекс на должность разработчика? Очевидно, ответ следующий: изучить на достаточном уровне Java или C++. На что сделать ставку, чтобы в будущем не пожалеть? Наверное, Java.
Реально ли дома по книжкам изучить Java (и сколько на это может потребоваться времени), чтобы не провалить собеседование в Яндексе? Или Яндекс — это слишком высоко, и все равно придется сначала поработать в более мелкой компании для приобретения опыта.
Мне сейчас очень нужен вектор развития, потому что я не хочу еще один год топтаться на месте.
P. S. Или я ошибаюсь в том, что с PHP нельзя построить хорошую карьеру?
История посещений в Javascript
Можно ли как-нибудь управлять историей посещений (кроме перехода вперед-назад) в Javascript хотя бы в одном из распространенных браузеров? Или можно как-нибудь отслеживать нажатия на кнопки вперед-назад и не давать переходить по ним?
Интересует для веб-приложения, активно использующего ajax.
Логическое отрицание результата выполнения анонимной функции
В сорцах facebook был найден образец нижеизложенного кода. Подскажите, пожалуйста, назначение и смысл использования подобного приёма:
!function(){
…
}();
Оригинал:
!function(){
var c = document.documentElement;
var b = 'child_focused';
var d = 'DOMControl_placeholder';
var a = function(e){
e = e || window.event;
var f = e.target || e.srcElement, h = f.getAttribute('placeholder');
if (h) {
var g = Parent.byClass(f, 'focus_target');
if ('focus' == e.type || 'focusin' == e.type) {
if (f.value == h) {
f.value = '';
CSS.removeClass(f, d);
g && CSS.addClass(g, b);
}
}
else
if (f.value == '') {
CSS.addClass(f, d);
f.value = h;
g && CSS.removeClass(g, b);
}
}
};
c.onfocusin = c.onfocusout = a;
if (c.addEventListener) {
c.addEventListener('focus', a, true);
c.addEventListener('blur', a, true);
}
}();
Спасибо!
…
}();
var c = document.documentElement;
var b = 'child_focused';
var d = 'DOMControl_placeholder';
var a = function(e){
e = e || window.event;
var f = e.target || e.srcElement, h = f.getAttribute('placeholder');
if (h) {
var g = Parent.byClass(f, 'focus_target');
if ('focus' == e.type || 'focusin' == e.type) {
if (f.value == h) {
f.value = '';
CSS.removeClass(f, d);
g && CSS.addClass(g, b);
}
}
else
if (f.value == '') {
CSS.addClass(f, d);
f.value = h;
g && CSS.removeClass(g, b);
}
}
};
c.onfocusin = c.onfocusout = a;
if (c.addEventListener) {
c.addEventListener('focus', a, true);
c.addEventListener('blur', a, true);
}
}();
Python vs Java
Добрый день.
Стою перед нелегким выбором. Если максимально упростить задачу, у меня есть 2 вакансии: соответственно Python/Django и JavaEE.
Будем считать, что условия работы одинаковые, зарплаты одинаковые (хотя, до офиса питоноводов мне гораздо ближе) и знаю я обе платформы одинаково средне.
Вопрос к знатокам: что перспективней? В какой области специалисты больше ценятся и легче находят работу? Помогите определиться:)
Другие языки мне не интересны, да и о достоиствах что джавы что питона я прекрасно знаю. То что любой опыт полезен и настоящему профи не важно на чем писать понимаю. Вопрос исключительно корыстный — в каком случае я буду больше зарабатывать через 5 лет при прочих равных.
быстрые манипуляции со строками таблицы
Есть таблица на 5к строк. И необходимость скрывать/показывать выборки из 1к её строк. Обычный вариант $(#table .need_hide).hide() работает очень долго. Минуты в зависимости от браузера. Есть варианты сделать-таки это средствами js или переносить на сервер только?
Предлагаю устроить небольшой кастинг вертикальных сумок для ноутбуков
Собственно нужны претендентки.
Cейчас ищу сумку под мой текущий asus n10j, но с перспективой переезда на примерно вот такого железного коня tm2.
Вопрос задаю здесь, потому что моя фантазия в поиски сумок вообще и выборе среди них достойных иссякла. На market.yandex подходящей галочки для типа сумки нет, а хочется именно вертикальную. Она должна меньше все углы собирать.
Загрузка своего Javascript в контент iFrame
Здравствуйте, подскажите пожалуйста, есть iFrame на странице, необходимо сделать так, чтобы в этот iFrame был включен мой javascript код ( в body)
например
<\iframe src="http://apple.com">
где на сайте apple.com открытом в iframe необходимо в тег Body добавить, например:
<script src="http://code.jquery.com/jquery-1.4.4.js"></script>
Пытался использовать метод Jquery.contents(), не получилось, подскажите, как решить проблему?
Как протестировать pda версию сайта?
Для того, чтобы понять как будет выглядеть переделанный сайт на мобильных устройствах, нужно иметь возможность сделать полное тестирование.
Т.е. посмотреть сайт на компьютере в том виде, в котором он будет на мобильном устройстве. И еще крайне желательно, чтобы действовали pda ограничения javascript. В частности интересует ajax в формах, будет ли работать также.
Есть ли какая-нибудь софтинка, подходящая для этих целей?
Клонирование элементов HTML5 в IE 6-8. Кто придумает как обойти баг?
Приятного времени суток.
Обнаружил своеобразный баг.
После добавления
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
HTML5 элементы в IE 6-8 отображаются нормально.
Но если клонировать узел с HTML5 элементами c помощью .cloneNode(true) или jQuery .clone(true), то все HTML5 элементы будут потеряны.
Как показывает .innerHTML клонированного узла, превращается в <:nav></:nav>.
Если почистить innerHTML с помощью регулярного выражения… элементы просто исчезают без следа.
Есть ли идеи, как можно обойти этот баг, не создавая поэлементно достаточно сложную иерархию узлов?
С уважением и надеждой на ответ.
<!--[if lt IE 9]>
<script src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script>
<![endif]-->
в чем преимущества Java перед php в веб приложениях
Приветствую всех,
но интересует мнение в первую очередь java программеров,
скажите пожалуйста в чем на Ваш взгляд преимущество Java перед php при написании веб приложений,
один факт понятен — писать под джавой говнокод сложнее чем на php, и это существенный аргумент, но какие есть ещё?
php изучать проще, примеров больше, библиотек навалом, использовать проще… тех же серверов навалом, насчет производительности несогласен — тот же FarmVille с 70 млн. юзеров имеет php на бэкэндах.
Никоем образом не хочу развести холивар,
всем спасибо.
Почему растут GC паузы у JBoss'а?
Приветствую!
Ситуация такая:
Есть 2 сервера, на каждом крутится по JBoss'у 4.2. На каждом JBoss'е вертится по приложению (пусть будут А и Б). Приложение А ходит к Б по EJB. Всё работает как надо.
Однако есть проблема:
У первого JBoss'а постепенно растёт время выполнения GC для young generation. Вскоре после запуска это время составляет 0.1 секунды, а через три дня уже 1.1 секунды. В результате чего растет нагрузка на сервер и уменьшается пропускная способность приложения.
О настройках:
Используется -XX:+UseConcMarkSweepGC -XX:+UseParNewGC -XX:NewSize=1024M -XX:MaxNewSize=1024M
При этом на JBoss'е с приложением Б всё хорошо.
Есть подозрение, что такой рост вызван тем, что А подключено к Б, т.к. подобная ситуация повторялась и на других JBoss'ах и приложениях.
Подскажите, пожалуйста, из-за чего могут расти эти паузы?
Проблема с click event в ajax
есть код
$(document).ready(function(){
$('.banner_stat').bind( 'click',
function(event){
$.get("index.phtml", { banner:$(this).attr("id")});
});
});
этот код должен срабатывать при клике на элементе(в моем случае это div). В мазиле опере все работает нормально вне зависимости от содержимого дива… в хроме и ie не работает когда внутри дива есть embed. Можно ли исправить это?
$('.banner_stat').bind( 'click',
function(event){
$.get("index.phtml", { banner:$(this).attr("id")});
});
});
Что почитать по JavaScript?
Посоветуйте толковые книги/мануалы по JS.
Есть ли по JS какой-нить общепринятый справочник, возможно в формате chm?
Материалы по современному Javascript?
Пришла пора мне взяться за client-side скриптинг, но с Javascript я знаком поверхностно. В связи с этим нужны следующие материалы:
- Часто используемые библиотеки (если есть что-то вроде перловского CPAN — вообще замечательно)
- Справочник по языку
- Примеры кода — чтобы понять, как сейчас на нем пишут
- Применение AJAX
- Ну и напоследок вопрос: кроссбраузерный скриптинг до сих пор является проблемой, или она успешно решена?
Вопрос по Java
Как обратиться к protected методу, если класс имеет единственный private конструктор?
Существует ли open-source скрипт похожий на min.us?
Где можно скачать скрипт типа того, на котором работает сайт min.us/? Хочу установить на свой домен.
Java: время на обдумывание
Приветствую всех.
Никогда раньше не писал на Java, а тут вышла необходимость писать тестирующую систему. Собственно единственная возникшая проблема в том, что
1) нужно вывести вопрос
2) дать пользователю пять секунд на ответ
3) если пользователь в течение этого времени ввел число, сразу перейти к следующему вопросу
4) если не ввел, программа должна понять что ответа дано не было и перейти к следующему вопросу.
Ответы я считываю Scanner'ом, и не могу понять, как обойти то, что он блокирует поток на командах вида next*() и hasNext*() до получения символа перевода строки. Прошу java профессионалов помочь :)
Отправка логов с клиента на сервер
Есть клиентская часть(upd: живет в норм браузере (ff,gc,sf,op)) некоего web-application`а, которая очень активно логгирует свои действия (на данный момент лог собирается в textarea'ю; не знаю лучший ли вариант, может еще и здесь что нибудь подскажут).
Хочется иметь эти логи на сервере. Так как лог большой, то было бы неплохо заархивировать все это дело и отправить на сервер.
возможно ли это? если да — то как? Может есть где-нибудь пример, или ссылка на док…
Thanks in advance!
upd:
$("textarea_with_log").value += new_log_string;
клиент «знает» когда нужно остановить логгирование и инициировать процессинг лога. Проблемы с завершением/выключением клиентской части/браузера «можно считать» что нет
Вконтакте API сервер-сервер
Как известно, у Вконтакте есть несколько способов работы с API:
- через JS со стороннего сайта или из встроенного приложения
- на ActionScript для приложений
- и Desktop-приложения
Для того, чтобы организовать работу с сервисом в то время, когда пользователь не находится на сайте способа я не нашёл, иначе говоря, нет возможности совершать запросы к API сервер-сервер (за исключением нескольких специфичных функций).
В один момент показалось, что можно замаскировать сервер под desktop-приложение, но и там ложка дёгтя, после перехода на сайт Вконтакте для авторизации, он не в состоянии передать никаких данных нашему серверу.
Итак, вопрос. Можно ли как-то организовать взаимлдействие с API вконтакте в режиме сервер-сервер?
Посоветуйте ecommerce cms
Посоветуйте, пожалуйста, хорошую ecommerce cms. Основные требования такие:
1) Написана на Java (желательно)
2) Очень просто и очень сильно расширяема
3) Пользоваться изначально можно «из коробки»
4) Для магазина с очень узкой тематикой, но серьезной посещаемостью.
Спасибо.
Посоветуйте базу данных (pure Java, Schema less, embedded, in memory)
Посоветуйте пожалуйста: pure Java, Schema less, embedded, in memory базу данных.
Чтобы использовать как кэш с возможностью поиска по свойствам объектов.
Ну или иные варианты как организовать такой кэш :)
Спасибо!
Редактор с подсветкой для JSON
Подскажите какой-нибудь редактор, в котором удобно просматривать JSON.
Под «удобно» я имею в виду:
1) Автоматическая разбивка и отображение в виде иерархии (даже если я открыл файл, где все записано в одну строку).
2) Подсветка (хотя бы минимальная, скобочки там).
Есть плагин для Лисы, но хотел бы использовать standalone решение или хотя бы web-тулзу.
jQuery UI Dialog, как повесить событие на нажатие ссылки внутри него?
Сейчас код выглядит так:
<div id="address-wrapper">
<a id="address-select" href="#" title="Нажми">Нажми</a>
</div>
<div id="dialog-form" title="Выберите ваш город">
<label for="search">Поиск</label>
<input type="text" name="search" id="search" class="text ui-widget-content ui-corner-all" />
<input type="button" name="post" id="search-button" value="Поиск" />
<br /><br />
<div id="results"></div>
</div>
<script type="text/javascript">
function searchSubmit() {
$.ajax({ type: "POST",
url: "gni_ajax.asp",
data: "query=" + $("#search").val(),
success: function(data){
$("#results").empty();
$("#results").append(data);
return false;}
});
};
$('#search').keypress(function(event) {
if (event.keyCode == '13') {
searchSubmit();
}
});
$("#search-button").click(function () { searchSubmit(); });
$("#dialog-form").dialog({
autoOpen: false,
height: 400,
width: 400,
modal: true,
buttons: {
"Отмена": function() {
$( this ).dialog("close");
}
},
close: function() {
alert("i'm closing!");
}
});
$("#address-select").click(function() {
$( "#dialog-form" ).dialog( "open" );
});
$(".addr").click(function() {
alert($(this).text());
alert(this.id);
$("#dialog-form").dialog("close");
});
</script>
Надо было мне, чтобы при нажатии на одну из ссылок, возвращенных аяксом (разные числовые id и тексты, один класс .addr, ее текст и значения вставлялись в input. Но добиться этого я не смог. Решил хотя бы посмотреть, что выдаст alert. Но он и того не показал, никакой реакции на нажатие нет. Если вешаю событие на нажатие address-select, то все срабатывает хорошо. Но эти ссылки, внутри диалога которые — не работают. Не то, что алерт, но и сам диалог не закрывается. Даже если указать не ".addr", а просто «a» Проверял в firebug, элементы создаются нормально:
<a href="#" id="7700000000000" class="addr">Москва г</a>
Что с этим делать? Ведь должно работать же!
<div id="address-wrapper">
<a id="address-select" href="#" title="Нажми">Нажми</a>
</div>
<div id="dialog-form" title="Выберите ваш город">
<label for="search">Поиск</label>
<input type="text" name="search" id="search" class="text ui-widget-content ui-corner-all" />
<input type="button" name="post" id="search-button" value="Поиск" />
<br /><br />
<div id="results"></div>
</div>
<script type="text/javascript">
function searchSubmit() {
$.ajax({ type: "POST",
url: "gni_ajax.asp",
data: "query=" + $("#search").val(),
success: function(data){
$("#results").empty();
$("#results").append(data);
return false;}
});
};
$('#search').keypress(function(event) {
if (event.keyCode == '13') {
searchSubmit();
}
});
$("#search-button").click(function () { searchSubmit(); });
$("#dialog-form").dialog({
autoOpen: false,
height: 400,
width: 400,
modal: true,
buttons: {
"Отмена": function() {
$( this ).dialog("close");
}
},
close: function() {
alert("i'm closing!");
}
});
$("#address-select").click(function() {
$( "#dialog-form" ).dialog( "open" );
});
$(".addr").click(function() {
alert($(this).text());
alert(this.id);
$("#dialog-form").dialog("close");
});
</script>
<a href="#" id="7700000000000" class="addr">Москва г</a>
Имитировать аплоад файла на сервер из JS?
Здравствуйте!
Моя цель — составить в JS и отправить POST-запрос к серверу, зааплоадив файл, содержимое которого будет взять не с диска юзера, а сгенерировано в JS.
Не совсем понимаю, что для этого стоит использовать — xmlhttprequest или есть что-то более высокоуровневое?
P.S. Конкретная цель — зааплодить через API ВКонтакта изображение, созданное на canvas.
Какие "заготовки" вы используете при вёрстке нового проекта?
Надоело верстать с нуля, знаю что многие используют различные заготовки вроде oocss, html5 boilerplate, однако кроме этих двух я больше ничего не знаю.
Посмотрел oocss и понял что из его функционала ничего не нужно, а идея не так и интересна.
html5bloilerplate сломан, половина всего не работает, что-то работает не так, что-то даже в хроме не работает.
Может есть что-то ещё?
mysql_real_escape_string vs mysql_escape_string
Согласно документации, стоит использовать только функцию mysql_real_escape_string.
Насколько я понимаю, это связано в основном с применением юникода и действительно оправдано.
Вопрос: насколько часто ошибается mysql_escape_string и можно ли в языках с нативной поддержкой юникода пользовать своей реализацией вроде:
/**
* Escape string for mysql. Don't use native function,
* because it doesn't work without connect.
*/
exports.escapeStr = function(str) {
return str.replace(/[\\"']/g, "\\$&").replace(/[\n]/g, "\\n")
.replace(/[\r]/g, "\\r").replace(/\x00/g, "\\0");
};
UPD: Вышеприведённый код не полный, в нём присутствуют не все символы, которые нужно экранировать. Давайте будем исходить из того, что replace для \b, \t, \Z, _, % также присутствуют:
exports.escapeStr = function(str) {
return str.replace(/[\\"']/g, "\\$&").replace(/\n/g, "\\n")
.replace(/\r/g, "\\r").replace(/\x00/g, "\\0")
.replace(/\b/g, "\\b").replace(/\t/g, "\\t")
.replace(/\x32/g, "\\Z") // \Z == ASCII 26
.replace(/_/g, "\\_").replace(/%/g, "\\%");
};
/**
* Escape string for mysql. Don't use native function,
* because it doesn't work without connect.
*/
exports.escapeStr = function(str) {
return str.replace(/[\\"']/g, "\\$&").replace(/[\n]/g, "\\n")
.replace(/[\r]/g, "\\r").replace(/\x00/g, "\\0");
};exports.escapeStr = function(str) {
return str.replace(/[\\"']/g, "\\$&").replace(/\n/g, "\\n")
.replace(/\r/g, "\\r").replace(/\x00/g, "\\0")
.replace(/\b/g, "\\b").replace(/\t/g, "\\t")
.replace(/\x32/g, "\\Z") // \Z == ASCII 26
.replace(/_/g, "\\_").replace(/%/g, "\\%");
};
Взаимодействие между замыканиями в JavaScript?
Есть замыкания:
(function () {
// do something
})()
(function () {
// do another thing
}) ()
Как бы вы организовали взаимодействие между объектами в этих замыканиях?
Собственно, вопрос возникает при использовании jQuery в больших проектах… вот есть, к примеру, диалоговое окно на jQuery UI. Но это как бы частный случай общей проблемы.
Обычно у меня это выглядит так:
<div id="dialog">
<p>something</p>
</div>
<button id="show_dialog_btn">Show Dialog</button>
<script>
jQuery(function ($) {
$("#dialog").dialog({
куча параметров,
ну просто тьма всяких настроек
и разные колбэки,
buttons: {
OK: function () {
// что-нибудь родить....
}
}
});
$("#show_dialog_btn").click(function () {
$("#dialog").dialog('open');
});
});
</script>
Диалоговое окно в этом случае, фактически состоит из НТМЛ разметки и джаваскрипт кода. Для простоты опустим ЦСС. Теперь, чтобы создать это же окно на другой странице, нужно либо копировать либо… А вот тут начинаются сложности… Если параметры окна зависят от каких-либо параметров в текущем замыкании, Допустим оно по нажатию кнопки Ок, должна быть вызвана «местная» для замыкания функция. Как быть?
(function () {
// do something
})()
(function () {
// do another thing
}) ()<div id="dialog">
<p>something</p>
</div>
<button id="show_dialog_btn">Show Dialog</button>
<script>
jQuery(function ($) {
$("#dialog").dialog({
куча параметров,
ну просто тьма всяких настроек
и разные колбэки,
buttons: {
OK: function () {
// что-нибудь родить....
}
}
});
$("#show_dialog_btn").click(function () {
$("#dialog").dialog('open');
});
});
</script>
Стоит ли делить на потоки реализацию TCP клиента?
Раньше работал C++ & Qt, там дело обстояло иначе, возможно даже проще.
Сейчас есть задача написать TcpClient для андроида, то есть на Джаве. Так вот, естественно нужно обрабатывать запросы с сервера, и самому уметь принимать. Пока что я остановился на идее, это разделить работу клиента на два потока, один к примеру принимает запросы от сервера и обрабатывает их. Второй поток, собственно сам гуй и отправка запросов.
Что скажете? Можно ли избрать лучший путь? Хочется послушать людей работавших в этой области, возможно кто то может посоветовать хорошую ссылку на пример с кодом, к сожалению я пока не нашел в интернете src который бы мне помог.
JavaScript: событие — появление элемента в области видимости. Как?
В фейсбуке лента новостей, при прокрутке страницы вниз, дозагружается сама.
Здесь вот тоже так же: nebo-v-almazah.ru/earrings
Что-то заработался и не могу никак понять как мне это сделать без постоянной проверки через setInterval()
Может что-то такое есть в jQuery?
Отправка булевых значений в запросах jQuery.ajax()
$.ajax({
url : uri,
type : 'post',
data : {someBooleanVar1: false, subVar: {someBooleanVar2: true}}
});
Проблема в том, что сервер получит переменные someBooleanVar1 и someBooleanVar2 в виде строк «false» и «true», а не «0» и «1».
Вопрос в том, есть ли в jQuery какой-то параметр или метод автоматизирующий конвертацию булевых значений в 0/1? Ну или если средствами jQuery такое не реализовать, то можеть кто-нибудь знает простенький способ обойти рекурсивно объект заменив boolean на number.
Спасибо!
url : uri,
type : 'post',
data : {someBooleanVar1: false, subVar: {someBooleanVar2: true}}
});
Выбор Java IDE
Недавно решил «переметнуться» в лагерь Java-разработчиков, и передо мной стал вопрос, какой выбрать IDE. Я понимаю, что на данный момент (период изучения основ языка), особой разницы нет, но у каждой IDE свои плюсы и минусы, хотелось бы знать о них заранее.
Рассматриваю несколько кандидатов:
- NetBeans
- Eclipse
- IntelliJ IDEA
Из которых, в Eclipse не работал ни разу, в NetBeans есть небольшой опыт (порядка пол-года) правда только c PHP, с IntelliJ IDEA напрямую не встречался, но сейчас работаю в их PhpStorm, очень нравится.
Тестовые примеры, на данный момент, делаю в IDEA Community Edition, но каков он по сравнению с IDEA Ultimate я не знаю, ибо использую пока лишь малую часть того, что умеет IDE.
Что посоветуете вы?
HTML5 анимация в canvas на JavaScript
Каким образом реализовывать анимацию на canvas в HTML5?
Просто задать интервал времени, через который каждый раз будет вызываться функция, которая в свою очередь будет заново прорисовывать содержимое canvas, или есть лучший способ?
Безопасный кроссдоменный обмен данными между AJAX и PHP
На одном сервере лежит PHP скрипт, на другом есть сайт, использующий AJAX. Как передавать между ними данные, чтобы гарантировать конфеденциальность и невозможность подделывания (вместо AJAX может быть и Flash, и обычные GET/POST запросы — на сокетах то просто, а нужно вот так вот)?
Единственное, что приходит в голову, это дополнительный скрипт ПХП и сокеты + SSL. Но это не очень удобно (т.к. может использоваться флеш без ПХП). Использование секретных ключей не кажется мне безопасным — флеш или яваскрипт легко стянуть и подстмотреть всю информацию. RSA — в одну сторону отправлю, но в обратную опять же — можно подсмотреть секретный ключ.
Какие есть варианты?
Литература по Java Concurrency
Случайно набрел на заметку. Я всегда знал, что у меня есть пробел в знаниях многопоточности в Java. Но этот список окончательно заставил взятся за ум.
Посоветуйте литературу продвинутого уровня в данной области. Я знаю, что есть куча информации и обсуждений в сети, но хотелось бы сперва более систематических знаний.
Благодарю.
Изучение серверного JavaScript
В последнее время все чаще JavaScript появляется на стороне сервера — Node.js, views в couchDB. Подавляющее большинство учебников, уроков и примеров по JS ориентированы исключительно на клиентскую часть, в лучшем случае классические фолианты вроде Флэнагана подробно рассматривают общий синтаксис и структуры языка. Есть ли уже полноценные книги или хотя бы толковые наборы уроков и примеров по серверному JavaScript? Можно на английском.
Задачи на Java
Здравствуйте!
Посоветуйте, пожалуйста, сайт, где можно найти задачи для обучения программированию на Java с системой проверки результатов тестами. Проще говоря система, как на олимпиаде — решение проверяется на определённом количестве тестов и выдаётся результат, только задачи нужны разного уровня, от простых до сложных.
Спасибо.
Регулярные выражения, использующие lookbehind, на языке JavaScript. Есть ли готовый код, решающий эту проблему раз и навсегда?
Как известно, на языке JavaScript вам не удастся попросту записать на языке регулярных выражений нечто подобное:someString.replace(/(?<!([abcdef]))gh/, …)
Не удастся потому, что в джаваскрипте нет учёта символов, предшествующих найденному выражению, то есть нет того, что называется «lookbehind assertions» — уж не знаю, есть ли устоявшийся термин для этого кода («(?<!……)») на русском языке.
Естественно, что программисты, использующие JavaScript, выработали целый ряд приёмов, позволяющих обойти этот недостаток. (Вон там перечислены многие такие трюки, например.)
Сейчас меня интересует кое-что другое, однако же. Не было ли в истории открытого кода каких-нибудь попыток окончательно решить эту проблему раз и навсегда — например, портировав библиотеку PCRE на язык JavaScript целиком?
Вопрос может показаться довольно дерзким по своему замаху, я знаю; однако, в конце концов, в истории не раз случались масштабные (и успешные!) попытки портировать или эмулировать на JavaScript то да сё; например, эмулятор Commodore 64 (о котором я упоминал на Хабрахабре прошлой зимою), или реализация многих функций PHP на JavaScript с открытым кодом, и так далее. Вдруг и с PCRE что-то подобноекому-нибудь удалось достигнуть, а я просто не знаю?
Опять же и попытки добавить в JavaScript новые флаги и элементы регулярных выражений также производились — XRegExp, например. Правда, в нём нету lookbehind, к сожалению.
Влияние JavaScript переадресации на поисковых ботов и индексирование сайта?
Есть две страницы с разными url, но содержание на них примерно одно и тоже. На одной активно используется JS+ajax, а другая адаптирована для просмотра пользователей без JavaScript, и для ботов.
Изначально грузится страница для людей без JS (которая для ботов), далее если у пользователя включена поддержка JS, то он перенаправляется средствами JS на другую страницу (адаптированную для активного использования JS).
Вопрос можно ли так делать безболезненно для индексации сайта и не повлияет ли это негативно на выдачу сайта в в поисковых системах?
Использование общего localStorage для поддоменов?
Здравствуйте. Обращаюсь за советом. Стоит задача — не гонять данные через cookies постоянно на сервер, а хранить их в localStorage и иметь к ним доступ через JavaScript.
Проблема в том, что localStorage даёт доступ только для конкретного адреса. То есть для адресов:
sub.domain.ru
sub2.domain.ru
данные будут разные. Есть ли какой-то способ объединить данные?
Пробовал вариант с iframe:
var ifr = document.createElement('iframe');<br/>
ifr.src = 'domain.ru/localstorage.html';<br/>
ifr.name = 'localStorageIframe';<br/>
document.body.appendChild( ifr );<br/>
после чего обращение к данным (и их сохранение) шло через window.frames[«localStorageIframe»].localStorage[«lastseen»]
Но это не дало результата — данные по-прежнему разные для разных поддоменов.
Есть ли у кого мысли, как это реализовать?
var ifr = document.createElement('iframe');<br/>
ifr.src = 'domain.ru/localstorage.html';<br/>
ifr.name = 'localStorageIframe';<br/>
document.body.appendChild( ifr );<br/>
Аналог Панорамио — проблема с картой
Задача — выводить на карте свой слой с фотографиями, изменяемый при увеличение или уменьшении карты — очень похоже на то, что делает панарамио.
Вариант использовать через апи маркеры отпадает сам собой.
Уже понятно, что на серверной стороне нужно генерить тайлы 256 на 256 пикселей с превьюшками фоток. Из этого примера стало понятно как эти тайлы накладывать. Но есть главная проблема — как обрабатывать события мыши при взаимодействии с наложенными фотками.
Буду благодарен за любые идеи!
Линии переменной толщины в HTML5 Canvas
Существует ли JS-библиотека, умеющая рисовать по canvas-у линии переменной толщины?
Ну то есть например: в начале толщина 3px, в конце 5px, и чтобы она плавно менялась вдоль всей линии.
Для прямых это, в принципе, реализовать не очень сложно. А вот для кривых Безье решение нетривиально.
javascript replace all
Иногда в исходном коде некоторых библиотек, написанных людьми грамотными, встречается конструкция string.split(find).join(replaceWith);
Чем это лучше обычного replace?
Асинхронная загрузка XML и Google Maps в jQuery
Ситуация: загружаются XML-файл и карты Гугла, чтобы данные из XML на ней отобразить. Делается всё асинхронно, требуется отследить, когда оба запроса выполнены.
Единственный простой способ, который я нашёл — Deferred objects в jQuery.
Пишем
function loadXML() {
return $.ajax({ url: 'data.xml', dataType: 'xml' });
}
Возвращаемый объект засовываем в $.when
$.when( loadXML(), ... ).then(function(){
doSomethind();
});
Проблемы возникают с загрузкой карты. Гугл предлагает следующий код для асинхронной загрузки:
function loadScript() {
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://maps.google.com/maps/api/js?sensor=false&callback=initialize";
document.body.appendChild(script);
}
Хочется знать, когда скрипт будет загружен и произойдёт обращение к initialize(). Первая мысль — запихать в initialize() ручное создание deferred-объекта и возвращать .promise(), но непонятно, что же добавить в $.when, чтобы тот сработал после того, как все методы API карт стали доступны.
Спасибо.
return $.ajax({ url: 'data.xml', dataType: 'xml' });
}
doSomethind();
});
var script = document.createElement("script");
script.type = "text/javascript";
script.src = "http://maps.google.com/maps/api/js?sensor=false&callback=initialize";
document.body.appendChild(script);
}
1C события
Здравствуйте, к сожалению, пришлось столкнуться с 1С (:.
Есть textarea (html), подгружается в 1С. Мне надо как-то транслировать события onClick, onBlur,… в 1С и обрабатывать на стороне 1С их скриптами.
Т.е. я могу из 1C через eval подписаться на них, но тогда обработка будет на стороне js и только js-кодом. Возможно ли то, что я хочу?
— Версия последняя 8.2. Я сам просто 1с не знаю, моя задача — js. Но в данном вопросе без знания 1с не обойтись.
У меня есть форма, там есть какое-то поле, для него я определяю onClick:
Procedure ПолеHTMLДокумента1onclick(Control, pEvtObj)
сообщить(test);
EndProcedure
Так вот, мне надо из js вызвать это событие onclick. Т.е. сэмулировать, чтобы на стороне 1с оно обработалось и вывело 'test'.
сообщить(test);
EndProcedure
UML reverse engineering for Java
Кто-нибудь может подсказать толковую бесплатную программу под linux для реверс-инженеринга джава файлов — для создания UML диаграмм?
Из более-менее работающего нашел плагин для NetBeans. Может быть, есть подобное для Eclipse? И вообще, интересно, кто чем пользуется для этого.
Спасибо.
Как залочить файл в JScript(WSH)?
Хочу блокировать файл с параметрами на время исполнения, чтобы при обращении к нему был отказ в доступе. Пробовал так:
var fso = new ActiveXObject('Scripting.FileSystemObject');
var Lockeds = new ActiveXObject("Scripting.Dictionary");
function LockFile(path) {
if (!Lockeds.Exists(path)) {
//открываю указанный файл в режиме добавления содержимого, и не закрываю его
Lockeds.Add(path, fso.OpenTextFile(path, 8));
}
}
function UnLockFile(path) {
if (Lockeds.Exists(path)) {
//Закрываю файл
Lockeds.Item(path).Close();
Lockeds.Remove(path);
}
}
, но не помогает, к файлу все равно можно получить доступ на чтение.
Цель: исключить возможность одновременно работы более одной копии скрипта.
Делать запись, например, в лог не вариант, т.к. при сбое питания или перезагрузке не будет сделана запись об окончании работы.
var fso = new ActiveXObject('Scripting.FileSystemObject');
var Lockeds = new ActiveXObject("Scripting.Dictionary");
function LockFile(path) {
if (!Lockeds.Exists(path)) {
//открываю указанный файл в режиме добавления содержимого, и не закрываю его
Lockeds.Add(path, fso.OpenTextFile(path, 8));
}
}
function UnLockFile(path) {
if (Lockeds.Exists(path)) {
//Закрываю файл
Lockeds.Item(path).Close();
Lockeds.Remove(path);
}
}
Cross Domain XmlHttpRequest
Добрый день, друзья.
Целый день сегодня мучаюсь с вышеозначенной темой. Изначальная задача:
Выполняясь на site.com отправить POST запрос (даже ответ не обязательно получать) на xxx.site.com. В крайнем случае готов ограничиться браузером Google Chrome.
Казалось бы, задача уже не нова, написана куча материалов на тему, но что-то ничего не срабатывает…
Итак, что я уже попробовал:
- подменить document.domain перед отправкой. Как оказалось, менять с xxx.site.com на site.com можно, а вот обратно — никак...
- создать iframe с src=«xxx.site.com», а затем внутри него добавить в дом модель тег script, который будет содержать в себе логику по отправлению XmlHttpRequest. И вот этот вариант уже почти-почти сработал, как по непонятным мне причинам xhr.readystatechange вызывается один раз и readyState=1… Код примерно такой:
var iframe = $('<iframe src=«xxx.site.com» style=«display:none;»></iframe>').appendTo(document.body);
var iDoc = iframe.get(0).contentDocument;
var script = iDoc.createElement(«script»);
script.setAttribute(«type», «text/javascript»);
script.innerHTML =
«function postIt() {» +
«var xhr = new XMLHttpRequest();» +
«xhr.onreadystatechange = function(data) {» +
«alert(xhr.readyState);» +
«if (xhr.readyState == 4) {» +
" if (xhr.status == 200) {" +
" alert(data.toString());" +
" } else {" +
" alert(xhr.error);" +
" }" +
"}};" +
«var url = \»xxx.site.com\";" +
«var postParams = \»a=1&b=1\"" +
«xhr.open(\»POST\", url, true);" +
«xhr.setRequestHeader(\»Content-Type\", \«application/x-www-form-urlencoded;\»);" +
«xhr.send(postParams);» +
"}" +
«postIt();»;
iDoc.body.appendChild(script);
* This source code was highlighted with Source Code Highlighter.
- Также рассмотрел способ с YQL — не подошло
Какие есть еще идеи как это побороть?
var iframe = $('<iframe src=«xxx.site.com» style=«display:none;»></iframe>').appendTo(document.body);
var iDoc = iframe.get(0).contentDocument;
var script = iDoc.createElement(«script»);
script.setAttribute(«type», «text/javascript»);
script.innerHTML =
«function postIt() {» +
«var xhr = new XMLHttpRequest();» +
«xhr.onreadystatechange = function(data) {» +
«alert(xhr.readyState);» +
«if (xhr.readyState == 4) {» +
" if (xhr.status == 200) {" +
" alert(data.toString());" +
" } else {" +
" alert(xhr.error);" +
" }" +
"}};" +
«var url = \»xxx.site.com\";" +
«var postParams = \»a=1&b=1\"" +
«xhr.open(\»POST\", url, true);" +
«xhr.setRequestHeader(\»Content-Type\", \«application/x-www-form-urlencoded;\»);" +
«xhr.send(postParams);» +
"}" +
«postIt();»;
iDoc.body.appendChild(script);
* This source code was highlighted with Source Code Highlighter.
Сертификация по фронт-энд технологиям?
Всем привет.
Есть возможность получить какие-то дипломы, аттестаты, сертификаты и прочие «корочки» по html\css\js\ проектированию интерфейсов и так далее?
В Украине ничего такого не видел.
Спасибо.
Opera не права? (вызов apply)
Вот в этом примере Opera 11.01 зацикливается, т.е. трейсер никогда не выйдет из цикла. Chrome и Firefox отработали нормально.
У Opera цепочка arguments.callee.caller.caller.caller… всегда указывает на arguments.callee (arguments.callee == arguments.callee.caller). Ссылка на тест
Объясните, может я в чем-то не прав или это баг?
Сертификации по Java от Oracle (Sun)?
Через неделю буду сдавать SCJP и хочется наметить себе планы на будущее.
Очень понравилась статья на Хабре на эту тему — habrahabr.ru/blogs/java/84405/ где описывается опыт сдачи SCBCD.
Хотелось бы услышать краткие отзывы об опыте сдачи таких сертификационных экзаменов:
— Sun Certified Java Developer (SCJD)
— Sun Certified Web Component Developer (SCWCD)
— Sun Certified Developer For Java Web Services (SCDJWS)
Заранее спасибо за ответы.
Список доступных WiFi точек на J2ME?
Всем добрый день!
Пишу это в большей степени разработчикам под J2ME, кто-нибудь в курсе — можно ли выдрать на Java список всех доступных WiFi точек в данный момент? Через IAPInfo получается выдрать только список доступных сетевых соединений, где всякие internet.mts.ru и тд, в котором как раз есть 'Search for WLAN'(вроде так) и самих точек то и нет. Видел уже примеры реализации получения списка WiFi точек на C++под симбиан, но я то пишу на Java. Надеюсь на вашу помощь)
Должен ли ClassLoader быть thread-safe? Имеет ли смысл кешировать загруженные классы?
В Java есть такая штука как ClassLoader's, но метод defineClass() в нем не синхронизированный, так же как и методы findClass() и loadClass(), что странно, так как разные потоки вполне могут обращаться к этим методам одновременно, что чревато повторной загрузкой например.
Стоит ли делать кастомный загрузчик thread-safe?
И, как мне кажется с этим должно быть тесно связано: Стоит ли делать кастомный загрузчик кешируюущим, если загрузка класса — длительный процесс?
Насколько сейчас актуальна поддержка браузеров без поддержки Javascript
Смотрю статистику сайтов, в частности, долю браузеров с поддержкой javascript. На данный момент, везде цифра колеблется в районе 99,9%. Напрашивается вопрос, насколько вообще в данный момент актуально тратить силы на реализацию дублирующего функционала для работы браузеров без js, если доля таковых на порядок меньше даже доли IE6?
Конечно, я не говорю сейчас о сервисах с милионной посещаемостью, где любая десятая доля – это уже десятки тысяч человек. Вопрос относится скорее к среднестатистическим проектам, где посещаемость 0-5000 человек. Побродив по рунету в режиме отключенного js, встречал где-то 50 на 50 сайты, поддерживающих отключенный js и не поддерживающих.
JS карта с функционалом гуглокарт?
В одном из проектов использовали скрипт карты для того что-бы показать в каких регионах России находятся дилеры компании. Не предусмотрели что этих дилеров может стать очень много, и теперь на многих маленьких клочках карты находится несколько точек, что очень некрасиво:

Поэтому интересует, встречал ли кто-нибудь какое-то подобие гуглокарт на JS — а именно нужна возможность нанесения на карту меток и возможность зума карты.
Apache + nodejs
Добрый день.
Поставил nodejs, сервер прослушивает 8000 порт. Все отлично работает при http запросе к mydomain.ru:8000
Подскажите что нужно сделать чтоб при обращении к nodejs.mydomain.ru запросы сразу (не mod_rewrite) уходили на mydomain.ru:8000
Спасибо.
прокидывать exception в блоках try-catch JAVA
я новичок. дали первую таску, одну часть выполнила, на второй встряла. подскажите пожалуйста что конкретно делать тут
"...в сервисных классах кафки нужно прокидывать exception в блоках try-catch, где вызывается log.error(). Нужно будет написать новые эксепшены нашего сервиса и прокидывать их"
мои сервисы
@Slf4j
@Component
@RequiredArgsConstructor
public class KafkaListenersService {
private final KafkaSenderService kafkaSender;
@Value(value = "${kafka-topics.platform-direction-create}")
private String platformDirectionCreate;
@Value(value = "${kafka-topics.platform-direction-update}")
private String platformDirectionUpdate;
@Value(value = "${kafka-topics.platform-direction-delete}")
private String platformDirectionDelete;
private final ObjectMapper objectMapper;
@KafkaListener(topics = "${kafka-topics.adapter-direction-create}")
public void listenerAdapterDirectionCreate(ConsumerRecord<String, JsonNode> myRecord){
log.info("Get message in topic adapter-direction-create, key {} value {}", myRecord.key(), myRecord.value());
DirectionRequest directionRequest = null;
try {
directionRequest = objectMapper.treeToValue(myRecord.value(), DirectionRequest.class);
} catch (JsonProcessingException e) {
log.error("Error reading message: {}", e.getMessage());
}
log.info("Created request to create direction: " + directionRequest.getName());
kafkaSender.sendMessage(platformDirectionCreate, "Create direction", myRecord.value());
}
@KafkaListener(topics = "${kafka-topics.adapter-direction-update}")
public void listenerAdapterDirectionUpdate(ConsumerRecord<String, JsonNode> myRecord){
log.info("Get message in topic adapter-direction-update, key {} value {}", myRecord.key(), myRecord.value());
DirectionRequest directionRequest = null;
try {
directionRequest = objectMapper.treeToValue(myRecord.value(), DirectionRequest.class);
} catch (JsonProcessingException e) {
log.error("Error reading message: {}", e.getMessage());
}
log.info("Created request to update direction: " + directionRequest.getName());
kafkaSender.sendMessage(platformDirectionUpdate, "Update direction", myRecord.value());
}
@KafkaListener(topics = "${kafka-topics.adapter-direction-delete}")
public void listenerAdapterDirectionDelete(ConsumerRecord<String, JsonNode> myRecord){
log.info("Get message in topic adapter-direction-delete, key {} value {}", myRecord.key(), myRecord.value());
String id = null;
try {
id = objectMapper.treeToValue(myRecord.value(), String.class);
} catch (JsonProcessingException e) {
log.error("Error reading message: {}", e.getMessage());
}
log.info("Created request to delete direction with id: " + id);
kafkaSender.sendMessage(platformDirectionDelete, "Delete direction", myRecord.value());
}
}
----------------------------------------------------------------------------------------------------
@Slf4j
@Service
@RequiredArgsConstructor
public class KafkaSenderService {
private final KafkaTemplate<String, Object> kafkaTemplate;
@Value(value = "${acks-timeout-mseconds}")
private Integer acksTimeoutMseconds;
public void sendMessage(String topic, String key, Object msg) {
try {
kafkaTemplate.send(topic, key, msg).get(acksTimeoutMseconds, TimeUnit.MILLISECONDS);
} catch (ExecutionException | InterruptedException | TimeoutException e) {
log.error("Message timeout may not be connected to Kafka! {} , stackTrace {}", e, Arrays.toString(e.getStackTrace()));
}
log.info("Sending via Kafka to a topic: {} massage: {}", topic, msg);
}
}