On 01/06/2011 07:00 AM, Caleb James DeLisle wrote:
> The problem is that you are using SQL to query against the database and 
> Hibernate is expecting HQL.
> I assume you added a table called lovtestdata manually. unfortunately 
> hibernate doesn't know that it
> exists and will not allow you to query against it.
> 
> The easy solution is to use:
> {{groovy}}
> xc = xcontext.getContext()
> hib = xc.getWiki().getHibernateStore();
> hib.beginTransaction(xc);
> try {
>   conn = hib.getSession().openConnection();

    conn = hib.getSession().connection();
My mistake.

>   // conn will be a 
> http://download.oracle.com/javase/1.3/docs/api/java/sql/Connection.html
>   // which will give you raw access to the database.
> 
>   // commit
>   hib.endTransaction(xc, true);
> } catch (Exception e) {
>   // or rollback
>   hib.endTransaction(xc, false);
>   throw e;
> }
> {{/groovy}}
> 
> The "right" solution is to use XObjects and query for their properties using 
> HQL or XWQL instead of
> raw database queries.
> 
> Caleb
> 
> 
> On 01/06/2011 05:09 AM, Richardson Luke wrote:
>> Hi All,
>>
>> I am having an issue with an error when running a velocity macro in xwiki.
>>
>> Within the Oracle database I have a table containing a list of page names.  
>> I am trying to run a script where the system takes this list, cycles through 
>> all pages within a space and deletes any pages who's name appears on the 
>> list.
>>
>> Here's what I have so far...
>>
>> ....
>> #set($sql = " where doc.space='AlarmIdentifiers' AND doc.name IN (SELECT 
>> data FROM lovtestdata)")
>> #DeletePagesLocal($sql)
>> ....
>>
>> #macro(DeletePagesLocal $sql)
>>      #foreach($item in $xwiki.searchDocuments($sql))
>>              #set($itemdoc = $xwiki.getDocument($item))
>>              $itemdoc.delete()
>>      #end
>> #end
>>
>> The error I am getting is:
>>
>> Caused by: com.xpn.xwiki.XWikiException: Error number 3223 in 3: Exception 
>> while searching documents with SQL [select distinct doc.space, doc.name from 
>> XWikiDocument as doc where (doc.hidden <> true or doc.hidden is null) and 
>> doc.space='AlarmIdentifiers' AND doc.name IN (SELECT data FROM lovtestdata)]
>> Wrapped Exception: lovtestdata is not mapped [select distinct doc.space, 
>> doc.name from com.xpn.xwiki.doc.XWikiDocument as doc where (doc.hidden <> 
>> true or doc.hidden is null) and doc.space='AlarmIdentifiers' AND doc.name IN 
>> (SELECT data FROM lovtestdata)]
>>
>> Essentially it is saying that the table is not mapped.
>>
>> If anyone could point me in the right direction it would be great.
>>
>> Many thanks
>> Luke
>>
>> LEGAL NOTICE
>>
>> This email and any files transmitted with it are confidential, may be 
>> privileged and are intended solely for the use of the individual or entity 
>> to whom they are addressed. If you are not the intended recipient, please 
>> telephone or email the sender on +44 (0) 1785 827 000 and delete this 
>> message and any attachment from your system; you must not copy or disclose 
>> the contents of this message or any attachment to any other person.
>>
>> Any views or opinions presented are solely those of the sender and do not 
>> necessarily represent those of Capula Limited and we accept no liability for 
>> its accuracy or completeness.  Copyright in this email and any attachment 
>> created by us belongs to Capula Limited.
>>
>> Please ensure you have adequate virus protection before you open or detach 
>> any documents from this transmission.  Capula Limited does not accept any 
>> liability for any loss or damage arising in any way from the receipt or use 
>> thereof.  Any e-mail reply to this address may be subject to monitoring for 
>> operational reasons or lawful business practices.
>>
>> Capula Limited
>> Registered No 00953504 England
>> Registered Office Orion House, Stone, Staffordshire, ST15 0LT.
>> _______________________________________________
>> 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