2015-02-04 5 views
0

Мы работаем с этой платформой:Modeshape создание рабочего пространства

JBoss 6.1.0.GA

Modeshape 3.6.0

Мне просто нужно, чтобы создать новое рабочее пространство и поместить внутри изображений, JavaScripts , и другие файлы, которые мне нужны для webapp, который мы разрабатываем.

Я попытался подключиться через WebDAV в наше хранилище modeshape и создать новый тестовый каталог внутри, но я всегда получаю это исключение:

2015-02-03 16:47 WARN [org.modeshape.web.jcr.webdav.ModeShapeWebdavStore] (http-/0.0.0.0:8021-1) Cannot obtain a session for the repository 'repository': The workspace test was not found 

Я смотрел на StackOverflow и на официальном руководстве по modeshape, но я все еще не могут понять, как сделать эту «легкую» задачу.

Кажется, нет документации, которая объясняет, как вручную создать новое рабочее пространство в репозитории.

добавить конфигурации из standalone.xml я использую для кэша:

 <subsystem xmlns="urn:jboss:domain:infinispan:1.4"> 
     <cache-container name="hibernate" default-cache="local-query" module="org.jboss.as.jpa.hibernate:4"> 
      <local-cache name="entity"> 
       <transaction mode="NON_XA"/> 
       <eviction strategy="LRU" max-entries="10000"/> 
       <expiration max-idle="100000"/> 
      </local-cache> 
      <local-cache name="local-query"> 
       <transaction mode="NONE"/> 
       <eviction strategy="LRU" max-entries="10000"/> 
       <expiration max-idle="100000"/> 
      </local-cache> 
      <local-cache name="timestamps"> 
       <transaction mode="NONE"/> 
       <eviction strategy="NONE"/> 
      </local-cache> 
     </cache-container> 
     <cache-container name="modeshape" default-cache="repository" module="org.modeshape"> 
      <local-cache name="repository"> 
       <transaction mode="NON_XA"/> 
       <string-keyed-jdbc-store datasource="java:/jdbc/blablablaDatasource" shared="true" passivation="false" purge="false"> 
        <property name="databaseType"> 
         oracle 
        </property> 
        <property name="createTableOnStart"> 
         true 
        </property> 
        <string-keyed-table prefix="CONTENT_REPO_STRING"> 
         <id-column name="id_column" type="VARCHAR2(255)"/> 
         <data-column name="data_column" type="BLOB"/> 
         <timestamp-column name="timestamp_column" type="NUMBER(20)"/> 
        </string-keyed-table> 
       </string-keyed-jdbc-store> 
      </local-cache> 
     </cache-container> 
     <cache-container name="binary_cache_container" default-cache="binary_fs"> 
      <local-cache name="binary_fs"> 
       <transaction mode="NON_XA"/> 
       <string-keyed-jdbc-store datasource="java:/jdbc/blablablaDatasource" shared="true" preload="false" passivation="false" purge="false"> 
        <write-behind flush-lock-timeout="1" modification-queue-size="1024" shutdown-timeout="25000" thread-pool-size="1"/> 
        <property name="databaseType"> 
         oracle 
        </property> 
        <string-keyed-table prefix="CONTENT_REPO"> 
         <id-column name="id_column" type="VARCHAR(255)"/> 
         <data-column name="data_column" type="BLOB"/> 
         <timestamp-column name="timestamp_column" type="NUMBER(20)"/> 
        </string-keyed-table> 
       </string-keyed-jdbc-store> 
      </local-cache> 
      <local-cache name="binary_fs_meta"> 
       <transaction mode="NON_XA"/> 
       <string-keyed-jdbc-store datasource="java:/jdbc/blablablaDatasource" shared="true" preload="false" passivation="false" purge="false"> 
        <write-behind flush-lock-timeout="1" modification-queue-size="1024" shutdown-timeout="25000" thread-pool-size="1"/> 
        <property name="databaseType"> 
         oracle 
        </property> 
        <string-keyed-table prefix="CONTENT_REPO"> 
         <id-column name="id_column" type="VARCHAR(255)"/> 
         <data-column name="data_column" type="BLOB"/> 
         <timestamp-column name="timestamp_column" type="NUMBER(20)"/> 
        </string-keyed-table> 
       </string-keyed-jdbc-store> 
      </local-cache> 
     </cache-container> 
    </subsystem> 

а также для modeshape конф:

<subsystem xmlns="urn:jboss:domain:modeshape:1.0"> 
     <repository name="repository" security-domain="modeshape-internal-security"> 
      <workspaces default-workspace="default" allow-workspace-creation="true"> 
       <workspace name="ops"> 
        <initial-content> 
         initial-content-default.xml 
        </initial-content> 
       </workspace> 
     <workspace name="other"/> 
     <workspace name="extra"> 
      <initial-content> 
         initial-content-default.xml 
        </initial-content> 
       </workspace>  
     <workspace name="default"/> 
      </workspaces> 
      <indexing rebuild-upon-startup="ALWAYS"/> 
      <cache-binary-storage data-cache-name="binary_fs" metadata-cache-name="binary_fs_meta" cache-container="binary_cache_container"/> 
      <sequencers> 
       <sequencer name="fixed-width-text-sequencer" classname="org.modeshape.sequencer.text.FixedWidthTextSequencer" module="org.modeshape.sequencer.text" commentMarker="#" path-expression="/files(//*.txt[*])/jcr:content[@jcr:data] => /derived/text/fixedWidth/$1"/> 
       <sequencer name="xml-sequencer" classname="xml" module="org.modeshape.sequencer.xml" path-expression="/files(//)*.xml[*]/jcr:content[@jcr:data] => /derived/xml/$1"/> 
       <sequencer name="image-sequencer" classname="image" module="org.modeshape.sequencer.image" path-expression="/files(//*.(png|jpg|gif)[*])/jcr:content[@jcr:data] => /derived/image/$1"/> 
      </sequencers> 
      <text-extractors> 
       <text-extractor name="tika-extractor" classname="tika" module="org.modeshape.extractor.tika"/> 
      </text-extractors> 
     </repository> 
    </subsystem> 

ответ

0

мне удалось заставить его работать только изменение конфигурации этого один:

JBoss 6.3.0.GA

Modeshape 3.8.1

0

Вы можете создать новое рабочее пространство программно с использованием стандартного JCR API (см. this StackOverflow question, но вы также можете определить рабочие области в файле конфигурации ModeShape.

Поскольку вы развертываете ModeShape в JBoss EAP, вы c настроить новые рабочие области в конфигурации подсистемы ModeShape в файле standalone-modeshape.xml установки. Вот пример (который на самом деле находится в этом файле конфигурации), чтобы определить 3 рабочих пространства с именем default, other и extra при запуске, определяет initial content для рабочей области с именем default и позволяет программное создание рабочих пространств.

<repository name="artifacts"> 
    <!-- ... --> 
    <!-- Define 3 workspaces to exist upon startup --> 
    <workspaces default-workspace="default" allow-workspace-creation="false"> 
    <workspace name="default"> 
     <initial-content>initial-content-default.xml</initial-content> 
    </workspace> 
    <workspace name="other"/> 
    <workspace name="extra"/> 
    </workspaces> 
    <!-- ... --> 
<repository name="artifacts"> 

Структура этого фрагмента XML продиктована modeshape_1_0.xsd файла в вашей установке EAP (или modeshape_2_0.xsd файла в Wildfly установках).

Для тех, кто не развертывает ModeShape в JBoss EAP (или Wildfly for ModeShape 4.x), вы можете сделать то же самое в файле конфигурации JSON в ModeShape. Например, это точно определяет те же рабочие области описаны выше:

"workspaces" : { 
    "predefined" : ["other", "extra"], 
    "default" : "default", 
    "allowCreation" : true, 
    "initialContent" : { 
     "default" : "initial-content-default.xml" 
    } 
}, 

См ModeShape-х JSON schema для получения более подробной информации и опций.

Кроме того, убедитесь, что при входе в Session вы правильно указываете имя рабочей области.

+0

Я обновил этот вопрос, я уже прочитал ваши советы ответы в руководстве, но это не позволяет мне создавать и достигать нового рабочего пространства. – user1821021

+0

Я изменил среду, и теперь она работает.К счастью, мы собираемся модернизировать окружающую среду в производстве, поэтому мне повезло. – user1821021