No, we only use Hibernate/JDBC. I don't think it's much of an issue for that 
snippet
because you will only ever need to run it once. As far as closing sessions if 
you
forget about them you could write a wrapper for the session and override 
finalize()
and have it call close(), this way the garbage collector would close the 
session if you
forgot about it.

Caleb

Igor Popov wrote:
> I'm afraid it is a problem. If I'm not closing the session explicitly
> in my component code, I end up getting pool exhausted exceptions. Some
> time ago, before I started migrating to component design, I used to
> close the session manually in my plugin, but still was getting the
> same exceptions. Maybe my code was buggy, but I would like, if
> possible, avoid handling sessions myself. Is it even possible? Does
> XWiki use any kind of JTA?
> 
> 2010/7/15 Caleb James DeLisle <[email protected]>:
>> Yes, it's closed before you have an opportunity to get a hold of it.
>>
>> You could add session.close() to the end of the script.
>> I don't think it is a problem because after extensive testing of that script
>> I still only have 5 processes of postgres running.
>> according to the javadoc, connection.commit() releases the actual connection
>> to the database. The garbage collector would take care of the rest.
>>
>> I just made a snippet in codeville.
>> http://code.xwiki.org/xwiki/bin/view/Snippets/DehiddenifierSnippet
>>
>> Caleb
>>
>> Igor Popov wrote:
>>> Thanks, Caleb! That saved me a lot of time.
>>>
>>> I have another question. Maybe I'm not getting the hibernate sessions
>>> idea right, but
>>> how can I get the current hibernate session that XWiki uses? I'm not
>>> eager to open my own session, as
>>> I'll have to make sure that it's closed correctly in the end.
>>>
>>> I've tried XWikiHibernateStore.getSession() but it appears to give me
>>> a null value.
>>>
>>> 2010/7/14 Caleb James DeLisle <[email protected]>:
>>>> If you don't mind declaring a dependency on xwiki-core, you can
>>>> import org.xwiki.context.Execution
>>>> import com.xpn.xwiki.XWikiContext
>>>> import com.xpn.xwiki.XWiki
>>>> import com.xpn.xwiki.store.XWikiHibernateStore
>>>> and then use:
>>>>
>>>> @Requirement
>>>> Execution ex;
>>>>
>>>> XWikiHibernateStore hib = 
>>>> ex.getContext().get("xwikicontext").getWiki().getHibernateStore();
>>>>
>>>> and you have XWikiHibernateStore, from that you can get the 
>>>> SessionFactory, open a session and do whatever.
>>>>
>>>> The API: 
>>>> http://maven.xwiki.org/site/xwiki-core-parent/xwiki-core/apidocs/com/xpn/xwiki/store/XWikiHibernateStore.html
>>>>
>>>> Caleb
>>>>
>>>> Igor Popov wrote:
>>>>> Again I have a question. QueryManager class allows to make queries to
>>>>> the database, but, for example,
>>>>> If I want to store an object in the database, I'll have to use
>>>>> something similar to hibernate session's save() method.
>>>>> What should I do?
>>>>>
>>>>> 2010/7/9 Igor Popov <[email protected]>:
>>>>>> Thanks, Alex! Never thought that it could be in the "scripting"
>>>>>> section of docs...
>>>>>>
>>>>>> 2010/7/9 Alex Busenius <[email protected]>:
>>>>>>> I guess this will answer your question:
>>>>>>> http://platform.xwiki.org/xwiki/bin/view/DevGuide/QueryGuide#HFromJavacomponents
>>>>>>>
>>>>>>> On 07/09/2010 06:28 AM, Igor Popov wrote:
>>>>>>>> Hi!
>>>>>>>>
>>>>>>>> I'm new to XWiki (especially to new "Component" design). My question
>>>>>>>> is: can my component/plugin access the database
>>>>>>>> the same way XWiki does? I.e. if I write Hibernate mappings for my own
>>>>>>>> objects and reference them in XWiki hibernate.cfg.xml,
>>>>>>>> how can my plugin/component gain access to Hibernate session object?
>>>>>>>>
>>>>>>>> Previously I've written a plugin for XWiki and had to connect to
>>>>>>>> database separately from XWiki.
>>>>>>>> It was not convenient at all and I want to avoid this practice in
>>>>>>>> further development.
>>>>>>>> Moreover, I had some problems with using connection pool, so I think
>>>>>>>> it would be wiser to
>>>>>>>> use XWiki database connection.
>>>>>>>> _______________________________________________
>>>>>>>> users mailing list
>>>>>>>> [email protected]
>>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>>
>>>>>>> _______________________________________________
>>>>>>> users mailing list
>>>>>>> [email protected]
>>>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>>>
>>>>> _______________________________________________
>>>>> users mailing list
>>>>> [email protected]
>>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>>
>>>> _______________________________________________
>>>> users mailing list
>>>> [email protected]
>>>> http://lists.xwiki.org/mailman/listinfo/users
>>>>
>>> _______________________________________________
>>> users mailing list
>>> [email protected]
>>> http://lists.xwiki.org/mailman/listinfo/users
>>>
>> _______________________________________________
>> users mailing list
>> [email protected]
>> http://lists.xwiki.org/mailman/listinfo/users
>>
> _______________________________________________
> users mailing list
> [email protected]
> http://lists.xwiki.org/mailman/listinfo/users
> 

_______________________________________________
users mailing list
[email protected]
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to