Hi, seems like you have also encountered the issue reported here: http://www.pubbs.net/201005/xwiki/10944-xwiki-users-configuring-open-office-server.html
Your suggestions sounds good (but may be you should have used $util.clearName() for cleaning names). Anyway, you should create a JIRA issue at jira.xwiki.org under officeimporter component and attach your suggestions as a patch. I'll review the patch and apply it. Thanks. - Asiri On Tue, May 11, 2010 at 1:45 AM, Wouter Boasson <wouter.boas...@rivm.nl>wrote: > Dear reader, > > Version: XWiki/XE 2.2.4 > > I gave the Office importer some treatment to make it work conform > expectations. Maybe interesting for others? > Whats weird is, that in IE7 it proposes an ugly document name, something > like: c-fakepath etc. So I modified XWiki.OfficeImporterResults to strip > everything in front of the actual documentname: > > > #set($fileName=$fileUpload.getFileName("filePath").replaceAll("^.*[\\]","")) > > Then, I added a check for an empty spacename (otherwise you'll end-up with > a document in the XWiki space, which is probably not what you want), and > also strip any considered 'dangerous' character from the documentname (such > as &^@, accents, etc): > > ########################### > ## Validate Target Space ## > ########################### > #if(! $request.targetSpace) > {{error}}$msg.get("xe.officeimporter.results.missingspace", > [$goBack]){{/error}} > #else > #if( $request.targetSpace == "" ) > {{error}}$msg.get("xe.officeimporter.results.missingspace", > [$goBack]){{/error}} > #else > ## #set($targetSpace=$request.targetSpace.replaceAll("[:/&=+?#]", > "-")) > ## > #set($targetSpace=$request.targetSpace.replaceAll("[^a-zA-Z0-9-_~]","_").replaceAll(" > \\.\\/", "").replaceAll('"',"")) > #set($targetSpace=$request.targetSpace.replaceAll(" \\.\\/", > "").replaceAll("[\=\&\@'\\/()]","-").replaceAll('"',"").replaceAll("[^a-zA-Z0-9-_~]","_")) > #end > #end > ########################## > ## Validate Target Page ## > ########################## > #if(! $request.targetPage) > {{error}}$msg.get("xe.officeimporter.results.missingpage", > [$goBack]){{/error}} > #else > ## #set($targetPage=$request.targetPage) > ## > #set($targetPage=$request.targetPage.replaceAll("[^a-zA-Z0-9-_~]","_").replaceAll("/", > "-").replaceAll('"',"")) > #set($targetPage=$request.targetPage.replaceAll("[\=\&\@'\\/()]", > "-").replaceAll('"',"").replaceAll("[^a-zA-Z0-9-_~]","_")) > #end > > Finally, I did not want to present the menu option at all for users who > have no rights to create documents: > In: templates/menuview.vm > ## #if($canImport) (original) > #if($canImport && $hasCreatePage) > #submenuitem($xwiki.getURL('XWiki.OfficeImporter', 'view') > $msg.get('core.menu.create.pageFromOffice') 'tmActionImport') > #end > > More of this to follow, hopefully useful for others! > > Regards, > Wouter > _______________________________________________ > users mailing list > users@xwiki.org > http://lists.xwiki.org/mailman/listinfo/users > _______________________________________________ users mailing list users@xwiki.org http://lists.xwiki.org/mailman/listinfo/users