Мозаики Struts 1 - вложенная проблема мозаик

Наше программное обеспечение и распределено локально клиентам и вручено от сетевого ресурса. Мы выбрали генерацию и файл CHM и ряд файлов HTML для обслуживания от сети. Пользователи, запускающие программу локально, используют файл CHM, и пользователи, получающие их программу, врученную от сетевого ресурса, должны использовать файлы HTML.

Мы используем Справка и Руководство и можем таким образом легко произвести оба типа вывода из того же исходного проекта. Файлы HTML также содержат ищущие возможности, и не требует веб-сервера, поэтому хотя это не оптимальное решение, хорошо работает.

До сих пор все однофайловые типы для Windows кажется поврежденным так или иначе:

  • WinHelp - (CHM) obsoleted
  • HtmlHelp - obsoleted на Vista, не работает от сетевого ресурса, кроме этого работы, действительно хорошие
  • Microsoft Help 2 (HXS) - это, кажется, работает правильно вплоть до точки, когда это не делает, поврежденные индексы или подобный, это используется Visual Studio 2005 и выше как пример

5
задан Glorfindel 21 July 2019 в 20:24
поделиться

3 ответа

Я нашел здесь некоторую информацию из

Это решение сработало для меня.

В этом случае обычно у вас есть создать новое определение, расширяющее из существующего заполните атрибут в правильном шаблоне и назначить новое определение как атрибут основного шаблона.

Другими словами:

<definition name="product.nav" template="/productNavLayout.jsp">    
    <put-attribute name="productPathNav" value="/productPathNav.jsp" />    
    <put-attribute name="productNav" value="/productNav.jsp" />  
</definition> 

<definition name="product.nav.extended" extends="product.nav">    
    <put-attribute name="productContent" value="product.grid" />  
</definition> 

<definition name="page.products" extends="layout">
    <put-attribute name="content" value="product.nav.extended" />  
</definition>
0
ответ дан 15 December 2019 в 06:29
поделиться

Прошло много времени с тех пор, как я использовал Struts Tiles, но не следует ли вам использовать вместо ?

То есть что-то вроде:

<tiles:insert attribute="userContent" flush="false"/>
0
ответ дан 15 December 2019 в 06:29
поделиться

Как видно из вашего вопроса, вы используете разные имена для атрибута содержимого. Это контент для user.layout и userContent для user.page.

Можете ли вы попробовать использовать одно и то же имя для этого атрибута либо content , либо userContent ?

Надеюсь, это поможет.

Обновление. Это быстрые хакерские решения. Вы можете использовать атрибут ignore, для которого установлено значение true для плиток: получить операцию. Это будет происходить тихо, если не определен userContent.

Но я думаю, что что-то не так с определениями тайлов.

Сообщение об ошибке предполагает, что вы пытаетесь использовать тайл, который не определен. Я составил пример, в котором .user.layout является расширением .basic.layout . Разница между ними заключается в части тела.

<definition name=".basic.layout" path="/WEB-INF/jsps/basicLayout.jsp">
   <put name="header" value="/WEB-INF/jsps/header.jsp"/>
   <put name="content" value="/WEB-INF/jsps/basicLayout.jsp"/>
   <put name="footer" value="/WEB-INF/jsps/footer.jsp"/>
</definition> 

<!-- extending content part of basic layout -->
<definition name=".user.content" value="/WEB-INF/jsps/user/layout.jsp">
   <put name="userContent" value="/WEB-INF/jsps/user/page.jsp"/>
</definition>

<!-- defining new layout -->
<definition name=".user.layout" extends=".basic.layout">
  <put name="content" value=".user.content"/>
</defnition>

<definition name=".user.page" extends=".user.layout">
  <put name="userContent" value="/WEB-INF/jsps/page.jsp"/>
</definition>

<definition name=".user.info" extends=".user.layout">
  <put name="userContent" value="/WEB-INF/jsps/userInfo.jsp"/>
</definition>

<definition name=".other.page" extends=".basic.layout">
  <put name="content" value="/WEB-INF/jsps/other.jsp"/>
</definition>
0
ответ дан 15 December 2019 в 06:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: