Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / Как можно передать данные с Сервлета(Контролера) в JQuery / 14 сообщений из 14, страница 1 из 1
05.09.2013, 00:08:55
    #38387291
UserQ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
Какие есть варианты передачи данных выбранных с сущности? Знаю Json, но он не подходит по ряду причин. У меня связаны 2 сущности OneToMany, и они в результате зацикливают метод toJson().
Если использовать как есть, тогда не получается получить доступ к некоторым полям. Странно правда это, они как бы есть но не может увидеть его jsp страница. На другом проекте такой проблемы не было.
Какие ещё варианты могут быть?
...
Рейтинг: 0 / 0
05.09.2013, 00:37:58
    #38387298
just_vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
UserQ,
при формировании json просто исключите обратные ссылки (если я верно понял, что вам нужно).
...
Рейтинг: 0 / 0
05.09.2013, 01:13:36
    #38387312
UserQ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
just_vladimir,

И как это сделать? Вариантов много пробовал. Хоть проект перестраивай.
...
Рейтинг: 0 / 0
05.09.2013, 09:01:58
    #38387410
mesier
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
UserQ Какие ещё варианты могут быть?

XML например..
Хотя мне JSON больше нравится. Совершенно не понятно какие сложности с ним могут быть.. Ну сделайте промежуточный DTO-объект что ли, который потом и сериализовать в JSON.
...
Рейтинг: 0 / 0
05.09.2013, 10:10:37
    #38387481
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
toJson это от какого фреймверка? GSON?
Гуглить "имя фреймверка" cyclic reference
...
Рейтинг: 0 / 0
05.09.2013, 11:34:26
    #38387601
just_vladimir
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
BlazkowicztoJson это от какого фреймверка? GSON?
+1
...
Рейтинг: 0 / 0
05.09.2013, 11:44:43
    #38387621
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
Поверхностное гугление выдаёт кучу рецпнтов
http://code.google.com/p/google-gson/issues/detail?id=137
http://stackoverflow.com/questions/8402832/is-there-a-solution-about-gson-circular-reference
http://stackoverflow.com/questions/11058476/self-circular-reference-in-gson

Правда, не понятно, почему бы просто не взять какой-то более адекватный JSON сериализатор, в котором такой проблемы нет? Например Jackson.
...
Рейтинг: 0 / 0
05.09.2013, 12:04:52
    #38387657
UserQ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
Blazkowicz,

Спасибо. Но примерно с того и начинался мой вопрос. Какие есть альтернативы.
...
Рейтинг: 0 / 0
05.09.2013, 12:06:31
    #38387662
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
UserQНо примерно с того и начинался мой вопрос. Какие есть альтернативы.
Дык я примерно и указал альтернативы. Что не так?
...
Рейтинг: 0 / 0
05.09.2013, 18:42:07
    #38388352
UserQ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
В общем попробовал Jackson ошибку не выдаёт, но проблемы не решило. Данные выдаются в бесконечном цикле. Есть как это побороть?
...
Рейтинг: 0 / 0
05.09.2013, 18:47:38
    #38388364
UserQ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
Контроллер, метод где преобразую, проаннотировал JsonIgnore. Не помогло.
...
Рейтинг: 0 / 0
05.09.2013, 19:15:44
    #38388391
mesier
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
UserQКонтроллер, метод где преобразую, проаннотировал JsonIgnore. Не помогло.
Это аннотация для сериализуемого класса, для энтити, а не сервис-методов..
...
Рейтинг: 0 / 0
05.09.2013, 19:35:30
    #38388402
Blazkowicz
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
UserQДанные выдаются в бесконечном цикле. Есть как это побороть?
Это как?
...
Рейтинг: 0 / 0
07.09.2013, 17:34:43
    #38390047
UserQ
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как можно передать данные с Сервлета(Контролера) в JQuery
Blazkowicz,

Ссылаются друг на друга.

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
@Entity
@Table(name = "Question")
@JsonIdentityInfo(generator=ObjectIdGenerators.PropertyGenerator.class, property="id")
public class Question implements Serializable{
	

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
//	@GeneratedValue
	private int id;

	private String question;


//	@JsonManagedReference("question-answers")
	@OneToMany(mappedBy="question")
//	@Transient
	private List<Answer> answers;



Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
@Entity
@JsonIdentityInfo(generator=ObjectIdGenerators.PropertyGenerator.class, property="id")
public class Answer implements Serializable{
	

	@Id
	@GeneratedValue(strategy=GenerationType.IDENTITY)
//	@GeneratedValue
	private int id;

	private String answer;

	private byte isCorrect;

//	@ManyToOne(optional = false)
//	@JoinColumn(name="QuestionID")
//	@JsonBackReference("question-answer")
//	@JsonIgnore
//	@Transient
	@ManyToOne
	@JoinColumn(name="QuestionID")
	private Question question;



Уже все возможные варианты попробовал. Все что решение получилось нагуглить пробовал, хотя их всего 2. Не одно не помогло всё выбирается по зависимости.
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / Как можно передать данные с Сервлета(Контролера) в JQuery / 14 сообщений из 14, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]