LINUX.ORG.RU

Сообщения mrXorg

 

Hibernate one to many eager

Форум — Web-development

Знакомлюсь с hibernate и возникла проблема:

Есть пользователь (user, он же client) и у него может быть много счетов (account).

SELECT * FROM bank_account WHERE client_id = 100000; Данный запрос возвращает 3 аккаунта.

Делаю отображение

для пользователя .....

    @OneToMany(cascade=CascadeType.ALL, fetch = FetchType.EAGER, mappedBy = "user")
    private Set<Account> accounts = new HashSet<>();
.... для аккаунта .....
    @ManyToOne(fetch = FetchType.EAGER)
    @JoinColumn(name = "client_id")
    private User user;
....

Дальше беру пользователя User user = userService.getUserById(100000);

Но хэш сет accounts пуст. EAGER использую, т.к. при работе с пользователем всё равно всегда нужны аккаунты.

Причем другие связи к этому пользователю (один к одному и много ко многим, lazy и eager) нормально загружают данные сразу.

Пробывал через ленивую загрузку, но возникает Exception: unable to evaluate the expression Method threw 'org.hibernate.LazyInitializationException' exception

и больше никакой информации. Но это скорей всего потому что сессия закрыта.

Использую spring 4.1.4 и hibernate 4.3.7

Если нужна какая-то дополнительная информация, скажите, скину. Помогите пожалуйста. Уже два часа не могу решить проблему.

 ,

mrXorg
()

JAVA EE Как правильно редактировать статику без компилирования сервера?

Форум — Web-development

Нужно постоянно менять .js и .css. Но когда сервер работает, статика берется не из папки с исходниками, а переносится в папку target и берется оттуда. Можно менять их в папке target, но тогда потом придется переносить изменения в папку с исходниками. Как правильно делать?

 , ,

mrXorg
()

Java limit cpu cores

Форум — Development

Как ограничить количество ядер используемых для работы приложения именно программно, в коде? У меня такое ТЗ. Linux Ubuntu. Инфы очень мало в бурже. Может есть проверенные библиотеки?

 , ,

mrXorg
()

Java makefile jar

Форум — Development

Так получилось, что нужно собирать проект через make, обычно это делал нормальным способом через maven, поэтому столкнулся сейчас с проблемой.

Есть manifest

 
Manifest-version: 1.0
Main-Class: Main
Class-Path: libs/some.jar
и makefile
 
all: compile
clean:
	@-rm -rf main
compile: clean
	@javac -d . -classpath lib/some.jar src/project/java/**/*.java src/project/java/*.java
	@jar -cvfm app.jar MANIFEST.MF *.class **/*.class 

Делаю make, потом java -jar app.jar Так всё работает, но т.к. .class складываются в корень проекта, то это засоряет корневую директорию проекта, что неудобно.

И если я указываю папку куда нужно складывать .class файлы, то потом уже не могу нормально собраться jar-ник, при запуске он пишет что не может найти main class.

А я просто заменяю . на dir в makefile и добавляю в manifest путь к главному классу dir.Main

manifest

 
Manifest-version: 1.0
Main-Class: dir.Main
Class-Path: libs/some.jar
и makefile
 
all: compile
clean:
	@-rm -rf main
compile: clean
	@javac -d dir -classpath lib/some.jar src/project/java/**/*.java src/project/java/*.java
	@jar -cvfm app.jar MANIFEST.MF *.class **/*.class 

java -jar app.jar Пишет: Error: Could not find or load main class dir.Main

Видимо, нужно еще что-то изменить или поменять процесс запуска

 , ,

mrXorg
()

OS kernel parameter «semmni» is properly set

Форум — General

Устанавливаю Oracle 11g 32 bit на ubuntu 12.04 LTS.

На 6 шаге выскакивает ошибка: This is a prerequisite condition to test whether the OS kernel parameter «semmni» is properly set. (more details) Expected Value  : 128 Actual Value  : 0

Делаю @Q210:~$ sudo sysctl -p

fs.aio-max-nr = 1048576
fs.file-max = 6815744
kernel.shmall = 2097152
kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
net.ipv4.ip_local_port_range = 9000 65500
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048586
kernel.shmmax = 1073741824
kernel.sem = 250 1024000 100 4096

kernel.sem = 250 1024000 100 4096

т.е. параметр semmni равен 4096 а не 0. Если сделать третий параметр SEMOPM маленьким, то oracle ругается уже на него. Т.е. исправления в /etc/sysctl.conf oracle видит.

ЧЯДНТ?

 

mrXorg
()

Где применима многопоточность, а где нет (алгоритмы)?

Форум — Development

Т.е. какие алгоритмы могут быть запрограммированы многопоточно, а какие наоборот - нет. Мне нужно сделать презентацию на эту тему. Буду рад полезным ссылкам. Не могу найти общей информации по этой теме. Для многопоточности: последовательность в алгоритме должна быть согласованной и линеаризуемоей. Но как доказать линеаризуемость алгоритма!? Да и примеры хорошо бы привести. Нашел инфу по теме http://www.slideshare.net/elizarov/ss-33970658 но там слишком обобщенно всё. Мне нужно больше практических примеров (примеров алгоритмов).

 ,

mrXorg
()

Как победить WiFi?

Форум — General

Пациент samsung q210 (a, b, g, n поддерживаются), ubuntu 12.04 LTS

Подключается ко всем точкам, кроме одной, которая переодически нужна (WPA2). Проблема странная, ввожу правильный пароль (пробывал десятки раз и спрашивал людей проверить, которые спокойно к ней подключаются). На моменте авторизации долго думает, а потом выдает окно для повторного ввода пароля «password or encryption keys are requitred to access the wireless newtwor». Если бы пароль был неправильный, то мне бы выпало уже другое окно. Т.е. проблема в чем-то другом. Пробывал подключаться через родной интерфейс и через стороннее приложежние wicd. Раньше я мог подключаться к этой точке, но возможно админы что-то изменили видимо или я что-то изменил и теперь не могу. Наведите пожалуйста на мысли, гугл не подсказал ничего толкового.

mrXorg
()

nginx vs pagespeed google

Форум — General

Проверил свой сайт через pagespeed и он говорит мне: Используйте кэш браузера для следующих ресурсов: там картинки, которые у меня отдаёт nginx Для location у меня прописано expires 30d; Запускаю Firebug и проверяю картинки, для которых сервис пишет "(не указан срок действия)".

Connection	keep-alive
Date	Thu, 28 Aug 2014 17:14:56 GMT
Last-Modified	Mon, 22 Aug 2011 22:58:00 GMT
Server	nginx/1.1.19
показать исходный код
Accept	image/png,image/*;q=0.8,*/*;q=0.5
Accept-Encoding	gzip, deflate
Accept-Language	ru-RU,ru;q=0.8,en-US;q=0.5,en;q=0.3
Cache-Control	max-age=0
Connection	keep-alive
Host	site.ru
If-Modified-Since	Mon, 22 Aug 2011 22:58:00 GMT
Referer	http://site.ru/path/
Статус 304 Not Modified с двух браузеров. Ок, может гуглу не нравятся заголовки. Смотрим: Last-Modified Mon, 22 Aug 2011 22:58:00 GMT Cache-Control max-age=0 Смотрим в доках какие заголовки хочет видеть гугл: Какие заголовки кеширования лучше использовать? Для всех кешируемых ресурсов нужно обязательно указывать один заголовок из пары Expires и Cache-Control max-age, а также один заголовок из пары Last-Modified и ETag. Использовать и Expires, и Cache-Control: max-age излишне, как и указывать Last-Modified и ETag одновременно.

ЧЯДНТ?

UPD> пока писал, увидел что время последнего изменения древнее почему-то, как исправить?

mrXorg
()

django authenticate кириллица

Форум — Development

Если ник пользователя на английском, то проверка проходит успешно. Если же ник пользователя на русском (кириллица), то проверку не проходит. Хотя в базе есть пользователь с таким именем. user = auth.authenticate(username='русский', password=«1234»)

ЧЯДНТ?

 ,

mrXorg
()

urllib и 403 при открытии сайта в зоне .ru

Форум — Development

Использую python 3.x и urllib.request

 
from bs4 import BeautifulSoup
import urllib.request

def forum(request):
    with urllib.request.urlopen("http://www.google.ru") as url:
        s = url.read().decode().encode('utf-8')
    soup = BeautifulSoup(s)
    return HttpResponse(str(soup))

HTTP Error 403: Forbidden

Если же заменить google.ru на google.com то всё ОК. Т.е. если доме в зоне .ru то ошибка. Почему?

mrXorg
()

Вопрос про github

Форум — General

Есть открытый репозиторий. Туда push'y данные с рабочего пк и pull'ю их на хост. Сейчас один файл приходится иногда менять, но в нем есть пароль от бд. Могу кинуть его в gitignore, но тогда придется отдельно его потом на хост заливать, что очень неудобно. Есть ли выход?

mrXorg
()

apache2 nginx sphinx stop

Форум — General

Как отключить эти сервера так, чтобы они не включались при перезагрузке компа.

Т.е. sudo /etc/init.d/apache2 stop

sudo nginx -s quit

sudo /etc/init.d/sphinxsearch stop

Отключают только до перезагрузки.

mrXorg
()

CvMat выбрать значения

Форум — Development

Есть картинка image, она в градациях серого. Получаю матрицу нужной области из неё с помощью:

CvMat data;
cvGetSubRect(image, &data, rect);
Если выполнить
cvSave(buf, &data);
то в xml файле будет матрица состоящая из значений 255 и 0. Что мне и нужно. Только мне нужно получить эти значения в обычный двумерный массив int **matrix без использования записи в файл. Проблема в том, что в data.data хранятся не 255 и 0, а другие значения, просто cvSave как-то выбирает нужный формат, наверное Indexed8. (Не знаю матчасть.)

Я могу вывести картинку, полученную из этой матрицы используя Indexed8:

cv::Mat m = cv::Mat(&data);
QImage q_image2 = mat_to_qimage_ref(m, QImage::Format_Indexed8);
label_2->setPixmap(QPixmap::fromImage(q_image2.rgbSwapped()));

А если заменить Indexed8 на RGB, то область уменьшится в 3 раза и склонируется 3 раза.

В этом и прикол, что когда я вывожу значения из матрицы в TextEdit

 QTextCursor cursor = ui->textEdit->textCursor();
                    for (int i = 0; i < data.rows; ++i) {
                        int* ptr = (int*)(data.data.ptr + i*data.step);
                        for (int j = 0; j < data.cols; ++j) {
                            if (ptr[j] == 0)
                                cursor.insertText(QString::number(0));
                            else
                                cursor.insertText(QString::number(1));
                        }
                        cursor.insertText("\n");
                     }
То получаю клонированную область. Т.е. допустим в области у меня находилась звездочка. Вместо нарисованной звездочки нулями и единицами в TextEdit я получу 3 уменьшенные звездочки. Потому что данные хранятся в CvMat не в формате Indexed8. Так как мне вывести так, чтобы была одна звездочка. Или как получить из CvMat двумерный массив int** в котором бы хранились только значеня 255 и 0. Попытался объяснить проблему по максимуму, но наверное только больше запутал. Помогите в общем пожалуйста.

mrXorg
()

mysql xml

Форум — General

При запросе наподобие такого:

select [Тип] ,( select [Имя]+': '+cast([Количество] as nvarchar)+ ',' as 'data()' from test t2 where t1.[Тип]=t2.[Тип] for xml path('') )
from dbo.TEST t1
group by [Тип]
Подчеркивает XML, хотя он должен поддерживаться вроде как.

SERVER version: 5.5.35

Как это исправить?

mrXorg
()

ubuntu startxfce4 xinit not found

Форум — General

Устанавливал драйвера для тачпада. Перестали загружаться иксы. При команде startxfce4 /usr/bin/startxfce4: 118: exec: xinit: not found

по 118 строчке это:

exec $prog /etc/xdg/xfce4/xinitrc $CLIENTRC $SERVERRC

Подскажите что делать? Не нашел такой проблемы в гугле.

mrXorg
()

qt opencv cvCvtColor проблема

Форум — Development
void MainWindow::openImage()
{
    //declare FileOpName as the choosen opened file name
    FileOpName = QFileDialog::getOpenFileName(this,
                                    tr("Open File"), QDir::currentPath(),tr("Image Files (*.png *.jpg *.jpeg *.bmp)"));

    //Check if FileOpName exist or not
    if (!FileOpName.isEmpty()) {
        QImage image(FileOpName);
        if (image.isNull()) {
            QMessageBox::information(this, tr("Face Recognition"),
                                     tr("Cannot load %1.").arg(FileOpName));

            return;
        }

    }
    //function to load the image whenever fName is not empty
        if( FileOpName.size() )
        {
            IplImage *image = cvLoadImage(FileOpName.toAscii().data());

            IplImage *gray_image = cvCreateImage(cvGetSize(image), IPL_DEPTH_8U, 1);
            cvCvtColor(image, gray_image, CV_RGB2GRAY);

           
            QImage *q_image = new QImage((uchar*)gray_image->imageData,
                                         gray_image->width,
                                         gray_image->height,
                                         QImage::Format_RGB888
                                         );
            ui->label->setPixmap(QPixmap::fromImage(q_image->rgbSwapped()));
        }
}

Изображение криво отображается. Если выводить так-же image, то всё нормально. Значит проблема в cvCvtColor скорее всего. Но её используют везде так, как у меня. Пробывал менять CV_RGB2GRAY на CV_BGR2GRAY - не помогло.

Скриншот http://rghost.net/53819481/image.png

mrXorg
()

Зависает ubuntu 12.04 при загрузке

Форум — General

Перезагрузка не помогает. Пока главная проблема выяснить на каком месте зависает т.е. у меня бутскрин от xfce и нету информации о выполняемых командах. Как запустить систему без бутскрина? ctrl alt Fx не работают.

P.S. до этого работало нормально, последнее что делал, установил qt-sdk.

mrXorg
()

Китайский G++

Форум — Development

Разочаровавшись в gcc Какая версия gcc даст предупреждение на данный код? (комментарий) не проходит много времени, как я сталкиваюсь с ерундой G++. Использовал в программе бинарный поиск и по невнимательности неправильно вызывал функцию, а именно, для массива из 2 элементов, говорил что там 5. Вместо того чтобы возвращать (-1), мне возвращался верный индекс элемента... Под виндой в visual studio возвращает (-1).

#include<iostream>

int BinarySearch(const int *arr, int count, const int &elem) {
  int first = 0;
  int last = count;
  while(first < last) {
    int mid = first + ((last - first) >> 1);
    if(elem <= arr[mid]) {
      last = mid;
    }
    else {
      first = mid + 1;
    }
  }
  return (first == count || arr[first] != elem) ? -1 : first;
}



int main() {
  int a[] = {4,5};
  std::cout << BinarySearch(a, 5, 5);

  return 0;
}
 
Проверял на g++ 4.6 4.7.2 4.8.2 Есть подозрения, что у меня apt-get тянет эти компиляторы из левого репозитория. Ибо у многих из вас скорее-всего уже будет выдаваться правильно "-1", а у меня выводится «1». Думаю, что компиляторы левые у меня т.к.в прошлой теме про gcc только у меня и у одного анонима не выводилось сообщение об ошибке.

Потратил 3 часа на поиск ошибки в программе (просто она работала правильно, но система тестирования не принимала, ибо там нормальный компилятор 4.7.2) из-за этой фигни, злой как собака... никакого доверия теперь к gcc и g++.

mrXorg
()

nginx отдача статики

Форум — Admin

location ~* \.(jpg|jpeg|gif|png|svg|js|css|mp3|ogg|mpe?g|avi|zip|gz|bz2?|rar|flv)$ {

root /home/project;

expires 30d;

}

Допустим я кладу картинку dog.jpg в каталог /home/project Тогда по адресу 127.0.0.1/dog.jpg ngnix её отдаёт.

Но по адресу 127.0.0.1/project/dog.jpg не отдаёт

Почему? Ведь регулярка написана для расширения и uri не важен...

mrXorg
()

nginx заголовки у файлов и кеширование

Форум — General

Делаю конфиг, нужно чтобы данные передавались с заголовками, кеширующими данные в браузере.

Это задание, которое я особо не понимаю.

Чтобы данные кешировались, в секции location я добавил

expires 30d;

А вот про заголовки в мане написано мало. Единственное, что я более менее нашёл для этого:

sendfile on;

tcp_nopush on;

etag on;

Правильно ли я сделал, добавив эти 4 директивы для выполнения задания.

mrXorg
()

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