Liferay
Training on Liferay Portal as well SOA, BPM & ESB Training in coming months.
Corporate Public Training
Ground Floor G-2, Aakruti Complex,
Above Stadium Under Bridge,
Navrangpura, Ahmedabad - 380009
Gujarat, India
Why to choose Liferay as Content Management System (CMS)
A content management system (CMS) such as a document management system (DMS) is a computer application used to manage workflow needed to collaboratively create, edit, review, index, search, publish and archive various kinds of content. liferay CMSs are frequently used for storing, controlling, versioning, and publishing industry-specific documentation such as news articles, operators' manuals, technical manuals, sales guides, and marketing brochures. The content managed may include binary files, image, audio, video, office documents, and Web content. These concepts represent integrated and interdependent layers. There are various nomenclatures known in this area: Web Content Management, Digital Asset Management, Digital Records Management, Electronic Content Management and so on. The bottom line for these systems is managing content and publishing, with a workflow if required.
Liferay is an Open Source Content Management System, It enables to design remarkable websites with powerful web application development, Liferay Frame work is Coded in JAVA Programming, its purely Open Source. At Attune Infocom, our Liferay Developers use Liferay CMS to design essential as well as complex business solutions and applications. This Framework is being supported by vast group of people of Liferay designers and Liferay developers who made independent module for rise Liferay CMS functionality.
Attune Infocom is a leading software development company based in India with having business offices in Australia, UK and USA, We offer Services like Liferay Website Development, Liferay module development, Liferay Extension Development, Liferay Component Development at a very affordable price in the marker. We have around 20 Liferay Web Development Team Members who have extensive knowledge and experience in developing websites, applications, extensions and components in Liferay.
Functions of CMS
CMS commonly provide metadata, Integration, Capture, Indexing, Storage, Retrieval, Distribution, Security, Workflow, Collaboration, Versioning and Publishing capabilities.
We Offer a complete Liferay CMS solutions...
Although the CMS is originally designed to make process of publishing the content simple, the configuration needed to develop and customize the CMS is relatively difficult and requires technical experts. Customizing CMS needs a good understanding of the content that is going to be published, the website design standards, and the type of users expected to visit it. Also, there is a need to know how to secure the content of the website based on the type of user trying to edit it. Each one of these technicalities can risk the CMS and cause it to fail delivering its goals.
Attune Infocom offers a full rank of services for Content Management Systems (CMS) and platform implementation. It will allow businesses to reduce the costs and increase operational efficiency by exercising control over their business processes. Attune Infocom provides ready to use solutions and platform customization and integration of CMS systems with enterprise applications, including all types of up-gradation. Attune Infocom is capable of merging services from different CMS vendors to deliver the solutions tailored to your business needs.
Below are the Services which we offer in Liferay Web Development:
Liferay Customization
Liferay Web Design
Liferay Development
Liferay Component Development
Liferay Extension Development
Liferay Module Customization
Liferay Template Integration
PSD to Liferay Template
Liferay Extension Integration
Payment Gateway integration
We have extensive highly professional Liferay Developers who can help you to provide below solutions in Liferay Development:
Ecommerce Shopping Carts
Online Reservation
Social Networking Portals
Job/Community based portals
Corporate websites
B2b Portals
School Websites
Church Websites
Complete solution with focused enterprise content management system, Attune Infocom provides expert development, consulting & training services to enable organizations to integrate & customize Liferay implementations.
NetBeans, GlassFish, BPEL & Open ESB Training
A content management system (CMS) such as a document management system (DMS) is a computer application used to manage workflow needed to collaboratively create, edit, review, index, search, publish and archive various kinds of content. liferay CMSs are frequently used for storing, controlling, versioning, and publishing industry-specific documentation such as news articles, operators' manuals, technical manuals, sales guides, and marketing brochures. The content managed may include binary files, image, audio, video, office documents, and Web content. These concepts represent integrated and interdependent layers. There are various nomenclatures known in this area: Web Content Management, Digital Asset Management, Digital Records Management, Electronic Content Management and so on. The bottom line for these systems is managing content and publishing, with a workflow if required.
Liferay is an Open Source Content Management System, It enables to design remarkable websites with powerful web application development, Liferay Frame work is Coded in JAVA Programming, its purely Open Source. At Attune Infocom, our Liferay Developers use Liferay CMS to design essential as well as complex business solutions and applications. This Framework is being supported by vast group of people of Liferay designers and Liferay developers who made independent module for rise Liferay CMS functionality.
Attune Infocom is a leading software development company based in India with having business offices in Australia, UK and USA, We offer Services like Liferay Website Development, Liferay module development, Liferay Extension Development, Liferay Component Development at a very affordable price in the marker. We have around 20 Liferay Web Development Team Members who have extensive knowledge and experience in developing websites, applications, extensions and components in Liferay.
Functions of CMS
CMS commonly provide metadata, Integration, Capture, Indexing, Storage, Retrieval, Distribution, Security, Workflow, Collaboration, Versioning and Publishing capabilities.
We Offer a complete Liferay CMS solutions...
Although the CMS is originally designed to make process of publishing the content simple, the configuration needed to develop and customize the CMS is relatively difficult and requires technical experts. Customizing CMS needs a good understanding of the content that is going to be published, the website design standards, and the type of users expected to visit it. Also, there is a need to know how to secure the content of the website based on the type of user trying to edit it. Each one of these technicalities can risk the CMS and cause it to fail delivering its goals.
Attune Infocom offers a full rank of services for Content Management Systems (CMS) and platform implementation. It will allow businesses to reduce the costs and increase operational efficiency by exercising control over their business processes. Attune Infocom provides ready to use solutions and platform customization and integration of CMS systems with enterprise applications, including all types of up-gradation. Attune Infocom is capable of merging services from different CMS vendors to deliver the solutions tailored to your business needs.
Below are the Services which we offer in Liferay Web Development:
Liferay Customization
Liferay Web Design
Liferay Development
Liferay Component Development
Liferay Extension Development
Liferay Module Customization
Liferay Template Integration
PSD to Liferay Template
Liferay Extension Integration
Payment Gateway integration
We have extensive highly professional Liferay Developers who can help you to provide below solutions in Liferay Development:
Ecommerce Shopping Carts
Online Reservation
Social Networking Portals
Job/Community based portals
Corporate websites
B2b Portals
School Websites
Church Websites
Complete solution with focused enterprise content management system, Attune Infocom provides expert development, consulting & training services to enable organizations to integrate & customize Liferay implementations.
SOA, BPM & ESB - Architecture, Design and Best Practices Training
|
|
NetBeans, GlassFish, BPEL & Open ESB Training
|
Training
Attune Infocom provide professional training for Open Source technologies to customers around the world. We have experience in developing and delivering effective training. Training delivered by trained consultants carefully selected to teach the product after proving themselves technically and by completing our exacting accreditation program. We offer public as well as private training. We organize onsite training at client location based on client requirements. All trainings are designed and developed using our modular approach so training can easily tailor to customer requirements when providing private, on-site training. Our training materials are part of our continuous improvement program to incorporating new techniques and feedback from our customers, which make training material even better on an ongoing basis. |
Training on Liferay Portal as well SOA, BPM & ESB Training in coming months.
The trainer is Dr. Zakir [Ph.D. in ICT], having 10+ years of IT industry experience, and has been involved with Open Source standards and technologies for several years. He has worked of various Open Source products for SOA, BPM, ESB, Portal, CMS, Grid Computing, Cloud Computing and Semantic Web. Prior, Zakir worked in CIGNEX as SOA Practice Lead and Principal Consultant, providing Open Source Portal and CMS consultancy and training around the world.Before joining CIGNEX, He was a Web Services Architect at IBM software Lab, working on IBM SOA Foundation products. |
Corporate Public Training
Training | Date | Location | Registration |
Securing Java Web Services | On Request | TBD | TBD |
Web Services Development Using Eclipse and JBoss | On Request | TBD | TBD |
please send email on training@attuneinfocom.com To contact for arranging private on-site training see our contact page.
Attune Infocom Pvt. Ltd.
Ground Floor G-2, Aakruti Complex,
Above Stadium Under Bridge,
Navrangpura, Ahmedabad - 380009
Gujarat, India
Ground Floor G-2, Aakruti Complex,
Above Stadium Under Bridge,
Navrangpura, Ahmedabad - 380009
Gujarat, India
Telephone: +91-79-40047259
Email: contact@attuneinfocom.com
Email: contact@attuneinfocom.com
Themes
Themes make it possible to easily switch among different presentational or "look and feel" layers. Within a single .war file, a designer/developer can deliver an integrated package of JSP (or Velocity), Javascript, image and configuration files that will control all presentation logic and design attributes for a portal community. Liferay Portal 3.5 comes with a handful of pre-made themes that showcase the versatility and creative possibilities themes enable:

Figure 2.1: "Classic" Theme
Figure 2.2: "Breeze" Theme

Figure 2.3: "Velocity" Theme
Figure 2.4: "Genesis" Theme

Figure 2.5: "Clean" Theme
Figure 2.6: "Brochure" Theme
Themes in Liferay Portal 3.5 are also incredibly flexible in how they can be applied:- Different themes can be assigned to specific user groups (a.k.a. communities).
- Users can choose a unique theme for their own personal portal page
- Both Java Server Page (JSP) and Velocity (VM) languages are supported
- Themes are hot-deployable as .wars (when supported by the app server)
To select a different theme, simply go to the Look and Feel section (in the header bar) and choose one of the available themes and a corresponding color scheme. The process is as straightforward as setting a new desktop background in Windows.Making Your Own Theme
Now that we’ve seen the power and flexibility of themes, let’s see how you can put your creativity to work and design your own. Making a new theme requires only four main steps:- Configure properties
- Edit templates (JSP or VM)
- Define CSS styles
- Code JavaScript (optional)
Let’s take a high-level look at how Liferay created the JSP-based "Brochure" theme (Figure 2.6) by modifying a few things in a copy of the "Classic" theme (Figure 2.1).Note: If you want to see an example using VM, take a look at the bundled "Velocity" theme (Figure 2.3).Configuration
To start, we created a copy of the "Classic" theme’s directory and renamed it "brochure." (Figure 2.1.1.1). We then deleted the color-schemes directory because we decided we would only have one color scheme for the "Brochure" theme. Although you don’t have to follow the layout shown here, this convention will make your themes easier to organize and keep them standard.
Figure 2.1.1.1 Directory structureOnce we have a directory to house our new theme, we need to let Liferay know the new theme’s directory location. This is done in liferay-look-and-feel.xml
(Figure 2.1.1.2). Notice that the theme configuration shows theme id="brochure" and identifies the compatible version. The root-path, templates-path and images-path are also set here. Make sure that these values match your directory structure.<look-and-feel>
<compatibility>
<version>3.5.0</version>
</compatibility>
<theme id="brochure" name="Brochure">
<root-path>/html/themes/brochure</root-path>
<templates-path>/html/themes/brochure/templates</templates-path>
<images-path>/html/themes/brochure/images</images-path>
<template-extension>jsp</template-extension>
<color-scheme id="01" name="Default">
<!-- color-scheme content omitted to simplify example -->
</color-scheme>
</theme>
</look-and-feel>
Figure 2.1.1.2 liferay-look-and-feel.xml
Templates
Now that Liferay Portal is configured to load your theme, the next step is to edit the template files that give the theme its uniqueness. Here’s a brief description of some of the templates that are used in the default themes:
init.jsp Initializes variables and properties needed for the theme.
css.jsp Contains CSS style definitions for your entire theme.
portal_normal.jsp Controls the layout of portal templates for normal pages.
portal_pop_up.jsp Controls the layout of portal templates for pop-ups.
top.jsp Draws the top of the portal.
bottom.jsp Draws the bottom of the portal.
navigation.jsp Draws the navigation bar of the portal.
portlet_top.jsp Draws the top of each portlet.
portlet_bottom.jsp Draws the bottom of each portlet.
javascript.jsp Contains JavaScript declarations.
Each template controls the layout of a particular area within the portal. For instance,portlet_top.jsp
controls the top portion of each portlet; navigation.jsp
determines how the navigation bar will look.Keep in mind that not all of these templates require modification; nor are you limited to the ones mentioned here. Feel free to add another template to control a different area of the portal. Just make sure to include the template in portal_normal.jsp
and/or portal_pop_up.jsp
.A number of changes were made to these templates for the brochure theme. Highlighted, you can see one such major change made to the placement and appearance of the portal configuration menu (Figures 2.1.2.1 and 2.1.2.1):
Figure 2.1.2.1 The "Classic" theme's portal config menu is integrated with the tabs.
Figure 2.1.2.2 The "Brochure" theme's portal config menu is relocated to the top of the portal.In the "Classic" theme, the portal configuration menu is part of the navigation bar. It consists of buttons and a dropdown menu. By contrast, the "Brochure" theme has the portal configuration menu relocated to the top of the portal and separated from the navigation bar. Also notice that the buttons are now simple text links. Some of the code changes required highlighted below in Figure 2.1.2.3:<div id="layout-outer-side-decoration">
<div id="layout-inner-side-decoration">
<div id="layout-top-decoration">
<div id="layout-corner-ul"></div>
<div id="layout-corner-ur"></div>
</div>
<div id="layout-box">
<div id="layout-top">
<div id="layout-logo">
<a class="bg" href="<%= themeDisplay.getPathFriendlyURL() %>/guest/home"><img border="0" hspace="0" src="<%= themeDisplay.getCompanyLogo() %>" vspace="0"></a>
</div>
<c:if test="<%= themeDisplay.isSignedIn() %>">
<div id="layout-user-menu">
<a style="font-size: 8pt;" href="<%= themeDisplay.getURLSignOut() %>"><bean:message key="sign-out" /></a> -
<c:if test="<%= GetterUtil.getBoolean(PropsUtil.get(PropsUtil.UNIVERSAL_PERSONALIZATION)) || RoleLocalServiceUtil.isPowerUser(user.getUserId()) %>">
<a style="font-size: 8pt" href="<%= themeDisplay.getPathMain() %>/portal/personalize_forward?group_id=<%= portletGroupId %>"><%= LanguageUtil.get(pageContext, "content-and-layout") %></a> -
</c:if>
<c:if test="<%= GetterUtil.getBoolean(PropsUtil.get(PropsUtil.LOOK_AND_FEEL_MODIFIABLE)) %>">
<a style="font-size: 8pt" href="<%= themeDisplay.getPathMain() %>/portal/look_and_feel_forward?group_id=<%= portletGroupId %>"><%= LanguageUtil.get(pageContext, "look-and-feel") %></a> -
</c:if>
<font class="portlet-font" style="font-size: 8pt;">
<%= LanguageUtil.get(pageContext, "my-communities") %>
</font>
<% String selectedStyle = "style=\"background: " + colorScheme.getPortletMenuBg() + "; color: " + colorScheme.getPortletMenuText() + ";\" "; %>
<font size="2">
<select name="my_communities_sel" style="font-family: Verdana, Arial; font-size: smaller; font-weight: normal;" onChange="self.location = '<%= themeDisplay.getPathMain() %>/portal/group_forward?group_id=' + this.value;">
<option <%= !layout.isGroup() ? selectedStyle : "" %> value="<%= Group.DEFAULT_PARENT_GROUP_ID %>"><%= LanguageUtil.get(pageContext, "desktop") %></option>
<% List myCommunities = UserLocalServiceUtil.getGroups(user.getUserId());
for (int i = 0; i < myCommunities.size(); i++) {
Group myCommunity = (Group)myCommunities.get(i);
%>
<option <%= layout.isGroup() && layout.getGroupId().equals(myCommunity.getGroupId()) ? selectedStyle + "selected" : "" %> value="<%= myCommunity.getGroupId() %>"><%= myCommunity.getName() %></option>
<% } %>
</select>
</font>
</div>
</c:if>
Figure 2.1.2.3 top.jsp
for the "Brochure" themeCSS Styles
Another major part of every theme is the collection of presentation attributes such as font size, background color, padding and margin. The best way to control these attribute in your theme is to use cascading style sheets (CSS). As mentioned briefly above, css.jsp contains all the CSS style definitions for your theme. Liferay Portal’s default themes include all JSR-168 standard style definitions. You may also add theme-specific style definitions to css.jsp. Using the templates and adding custom images as necessary, you can use standard and custom style definitions to give your theme a distinctive look and feel. Let’s look at some of the style changes made in the "Brochure" theme.Header Bar
.portlet-header-bar {
background-color: #e0e0e0;
margin: 0 1px 0 1px;
padding: 3px 0px 3px 0px;
position: relative;
z-index: 2;
}
<%@ include file="init.jsp" %>
<div class="portlet-container" style="width: <%= portletDisplay.getWidth() %>">
<div class="portlet-header-bar">
<c:if test="<%= Validator.isNotNull(portletDisplay.getTitle()) %>">
<div class="portlet-title">
<b> <%= portletDisplay.getTitle() %> </b>
</div>
</c:if>
The style definition portlet-header-bar
is used in the portlet_top
template. The portlet_top
template is used to draw the top of each portlet within the portal. As you can see from theportlet-header-bar
definition, the header bar for each portlet should have a gray background color, with a small margin on its sides, padding on top and bottom, positioned relatively and with a z-index of 2.Dynamic Style Values
Another flexibility aspect to highlight is that style values can be retrieved dynamically from color scheme variables defined in liferay-look-and-feel.xml
. Because the style sheet is a JSP file, you can use JSP tags to dynamically assign some of your style definition values. For example:.portlet-title {
color: <%= colorScheme.getPortletTitleText() %>
font-family: Tahoma, Arial;
font-size: smaller;
vertical-align: middle;
}
In the above code, portlet-title
’s color attribute has its value retrieved dynamically. This way, depending on the color scheme selected on the "Look and Feel" page in the portal, the title bar will have a color appropriate to the currently selected color scheme.Please refer to the theme user guide for more information.JavaScript
Lastly, you are free to use JavaScript to create a more dynamic interface for your theme. To use a script, all you have to do is put the script file inside your theme directory, then provide the location of this file in the script declaration in javascript.jsp
. For example, if your JavaScript file is called my_script.js
and it’s located in html/themes/my_themes/js
, make the following declaration in javascript.jsp
:<script language="JavaScript" src="<%= themeDisplay.getPathThemeRoot() %>/js/my_script.js"></script>
The JSP expression <%= themeDisplay.getPathThemeRoot() %>
helps keep you from hard-coding information in your templates. Refer to the API to see other variables and methods available to you.Both the "Clean" theme (Figure 2.5) and the "Genesis" theme (Figure 2.4) use JavaScript to create a dynamic interface.CMS + Portal = Website
In addition to themes, Liferay Portal 3.5 has several enhancements that make it very straightforward to combine static CMS articles and functionality-rich portlets on the same portal page. One direct application of this capability would be to create your public website using Liferay, and thereby enable the inclusion of portlets on your website. Not only would you be able to reuse functional components and find innovative ways to use them, but you could also quickly build new pages out of common components within a tightly-managed CMS framework.As an example, suppose an insurance company wants to show their customers how much they can save by switching to their insurance plan. Online visitors can go to their website, fill out a short form, and receive pricing information instantaneously. If this insurance company uses Liferay 3.5 to build their website, they can easily develop a pricing calculator portlet, grant guest access, and display it on the front page of their website. The CMS-managed article describing the plan can be placed right beside the calculator portlet.Also, incorporating portlets into your website helps to encourage reuse. If two different pages on your website need to offer the same functionality, one portlet can simply be placed in both pages.Liferay Portal 3.5 also comes with portlets specifically designed to help you build a public website easily. The Breadcrumb Portlet keeps track of how deep a user has gone into the navigation of a site. The Navigation Portlet can be configured to act as a standard nested navigation menu. These and other portlets can be re-used and easily included on every content page where they are needed, and once the main Theme layout has been created, psges can be put together using these portlets without touching the presentation code. Layout is handled strictly through portal page configuration.Besides providing functionality, a website also needs to provide information. Liferay Portal 3.5 allows CMS articles to be inserted into your portal just like any other portlet. You can thus easily bring various articles together to assemble a website.Taking the above example, the insurance company may want one portlet containing a CMS article describing their pricing. Right next to it is another portlet with a CMS articles haring customer testimonials. The layout of the page the articles live in is managed within the portal’s admin section, and the content and layout of the individual articles is easily maintained through the journal portlet.Liferay Portal 3.5 also ships with the Runtime Portlet and the Portlet Aggregator. The Runtime Portlet is used to embed portlets into CMS articles. This portlet is used at Liferay.com to embed an instance of the Login Portlet within the article that’s displayed on the main web page.The Portlet Aggregator provides a flexible means to lay out several portlets. You are no longer confined to the strict rigidity of a column layout, but can rather set the layout of several portlets dynamically using HTML and CSS.In Liferay’s next Javalobby article, we’ll explore both of these portlets in greater detail.Note: For documentation on Liferay’s CMS, please see the CMS User Guide.Example of CMS and Web Portal Integration
Liferay’s main website was recently rebuilt to utilize the portal instead of using linked CMS pages (which showcased version 3.2 capabilities). In this new paradigm, each page on the website is a layout (page) comprised of several different portlets. To illustrate, let’s take Liferay’s "Company Overview" page as an example. Figure 2.1.4.1 shows the webpage with each of the five portlets marked. (You can view the actual page here.)
Figure 2.1.4.1 Company OverviewCompany Overview, like most other pages on Liferay.com, is a portal layout (page) with two columns, one narrow and one wide, containing various portlets that supply its content. Portlets two and four, denoted in Figure 2.1.4.1, are instances of the Navigation and Breadcrumb Portlets, respectively. The remaining three portlets are instances of the Journal Content portlet; each contains its own CMS article. Portlet one and three contain a single picture each, and portlet five contains a detailed overview of Liferay.You can add, delete, and organize page layouts by using the Admin section (Figure 2.1.4.2), accessed by the "Content and Layout" button.
Figure 2.1.4.2 Admin PortletFor the Company page, we added the "Company" layout right under the "Home" layout. Also notice the Friendly URL field. This field allows you to assign a simple URL to a layout. So instead of linking to this page with the URL www.liferay.com/c/portal/layout?p_p_id=34..., you can use a simplified URL like www.liferay.com/web/guest/company.Once the "Company" page layout has been added, you can add different portlets to it to quickly assemble your webpage.For example, to add the Breadcrumb Portlet to the right column:- Go to the bottom of the right column.
- Choose "Breadcrumb" in the dropdown menu.
- Click the "Add" button.
To add a CMS article in the left column:- Go to the bottom of the left column.
- Choose "Journal Content" in the dropdown menu.
- Click the "Add" button.
- Click the "Edit" button to specify the ID of the article you want.
- Specify whether you would like to see a border.
- Add an optional title and click the "Save Settings" button.
Note: When assembling your webpage, remember to extract all the presentation attributes to your theme. This way, all the attributes are centralized. For example, to remove the gap between the wide and narrow columns, we set the "margin" attribute in the "Brochure" theme to zero.
Figure 2.1: "Classic" Theme
Figure 2.2: "Breeze" Theme
Figure 2.3: "Velocity" Theme
Figure 2.4: "Genesis" Theme
Figure 2.5: "Clean" Theme
Figure 2.6: "Brochure" Theme
liferay-look-and-feel.xml
(Figure 2.1.1.2). Notice that the theme configuration shows theme id="brochure" and identifies the compatible version. The root-path, templates-path and images-path are also set here. Make sure that these values match your directory structure.<look-and-feel>
<compatibility>
<version>3.5.0</version>
</compatibility>
<theme id="brochure" name="Brochure">
<root-path>/html/themes/brochure</root-path>
<templates-path>/html/themes/brochure/templates</templates-path>
<images-path>/html/themes/brochure/images</images-path>
<template-extension>jsp</template-extension>
<color-scheme id="01" name="Default">
<!-- color-scheme content omitted to simplify example -->
</color-scheme>
</theme>
</look-and-feel>
liferay-look-and-feel.xml
portlet_top.jsp
controls the top portion of each portlet; navigation.jsp
determines how the navigation bar will look.portal_normal.jsp
and/or portal_pop_up.jsp
.<div id="layout-outer-side-decoration">
<div id="layout-inner-side-decoration">
<div id="layout-top-decoration">
<div id="layout-corner-ul"></div>
<div id="layout-corner-ur"></div>
</div>
<div id="layout-box">
<div id="layout-top">
<div id="layout-logo">
<a class="bg" href="<%= themeDisplay.getPathFriendlyURL() %>/guest/home"><img border="0" hspace="0" src="<%= themeDisplay.getCompanyLogo() %>" vspace="0"></a>
</div>
<c:if test="<%= themeDisplay.isSignedIn() %>">
<div id="layout-user-menu">
<a style="font-size: 8pt;" href="<%= themeDisplay.getURLSignOut() %>"><bean:message key="sign-out" /></a> -
<c:if test="<%= GetterUtil.getBoolean(PropsUtil.get(PropsUtil.UNIVERSAL_PERSONALIZATION)) || RoleLocalServiceUtil.isPowerUser(user.getUserId()) %>">
<a style="font-size: 8pt" href="<%= themeDisplay.getPathMain() %>/portal/personalize_forward?group_id=<%= portletGroupId %>"><%= LanguageUtil.get(pageContext, "content-and-layout") %></a> -
</c:if>
<c:if test="<%= GetterUtil.getBoolean(PropsUtil.get(PropsUtil.LOOK_AND_FEEL_MODIFIABLE)) %>">
<a style="font-size: 8pt" href="<%= themeDisplay.getPathMain() %>/portal/look_and_feel_forward?group_id=<%= portletGroupId %>"><%= LanguageUtil.get(pageContext, "look-and-feel") %></a> -
</c:if>
<font class="portlet-font" style="font-size: 8pt;">
<%= LanguageUtil.get(pageContext, "my-communities") %>
</font>
<% String selectedStyle = "style=\"background: " + colorScheme.getPortletMenuBg() + "; color: " + colorScheme.getPortletMenuText() + ";\" "; %>
<font size="2">
<select name="my_communities_sel" style="font-family: Verdana, Arial; font-size: smaller; font-weight: normal;" onChange="self.location = '<%= themeDisplay.getPathMain() %>/portal/group_forward?group_id=' + this.value;">
<option <%= !layout.isGroup() ? selectedStyle : "" %> value="<%= Group.DEFAULT_PARENT_GROUP_ID %>"><%= LanguageUtil.get(pageContext, "desktop") %></option>
<% List myCommunities = UserLocalServiceUtil.getGroups(user.getUserId());
for (int i = 0; i < myCommunities.size(); i++) {
Group myCommunity = (Group)myCommunities.get(i);
%>
<option <%= layout.isGroup() && layout.getGroupId().equals(myCommunity.getGroupId()) ? selectedStyle + "selected" : "" %> value="<%= myCommunity.getGroupId() %>"><%= myCommunity.getName() %></option>
<% } %>
</select>
</font>
</div>
</c:if>
top.jsp
for the "Brochure" theme.portlet-header-bar {
background-color: #e0e0e0;
margin: 0 1px 0 1px;
padding: 3px 0px 3px 0px;
position: relative;
z-index: 2;
}
<%@ include file="init.jsp" %>
<div class="portlet-container" style="width: <%= portletDisplay.getWidth() %>">
<div class="portlet-header-bar">
<c:if test="<%= Validator.isNotNull(portletDisplay.getTitle()) %>">
<div class="portlet-title">
<b> <%= portletDisplay.getTitle() %> </b>
</div>
</c:if>
portlet-header-bar
is used in the portlet_top
template. The portlet_top
template is used to draw the top of each portlet within the portal. As you can see from theportlet-header-bar
definition, the header bar for each portlet should have a gray background color, with a small margin on its sides, padding on top and bottom, positioned relatively and with a z-index of 2.liferay-look-and-feel.xml
. Because the style sheet is a JSP file, you can use JSP tags to dynamically assign some of your style definition values. For example:.portlet-title {
color: <%= colorScheme.getPortletTitleText() %>
font-family: Tahoma, Arial;
font-size: smaller;
vertical-align: middle;
}
portlet-title
’s color attribute has its value retrieved dynamically. This way, depending on the color scheme selected on the "Look and Feel" page in the portal, the title bar will have a color appropriate to the currently selected color scheme.javascript.jsp
. For example, if your JavaScript file is called my_script.js
and it’s located in html/themes/my_themes/js
, make the following declaration in javascript.jsp
:<script language="JavaScript" src="<%= themeDisplay.getPathThemeRoot() %>/js/my_script.js"></script>
<%= themeDisplay.getPathThemeRoot() %>
helps keep you from hard-coding information in your templates. Refer to the API to see other variables and methods available to you.Web Services Development Using Eclipse and JBoss
J2EE developers who wants to learn Web Services and developed Web Services based enterprise application. This training will covers advanced concepts of Web Services and SOA that will help them to build large business solutions.
This training will teach you the theory and practical of XML, Web Services first and second generation starndards such as WSDL, SOAP, UDDI, WS-Security, WS-Addressing, WS-ReliableMessaging, WS-Trust, BPEL and various Java specifications that cover Web Services development (JAX-WS, JAXB and JSR 921). We will use Eclipse and JBoss for development and lab exercise.
Course Content
- XML
- SOAP
- WSDL
- UDDI
- JAXB
- JAX-WS
- JSR 921
- WS-Security
- Interoperability issues
- WS-Addressing
- WS-ReliableMessaging
- WS-Trust and WS-Federation
- BPEL
Duration: 5 Days (40 Hours)
Development Environment
- Eclipse
- JBoss
- OS - Windows XP
Prerequisites
- Basic Java, J2EE, Web Development and Database knowledge.
This training will teach you the theory and practical of XML, Web Services first and second generation starndards such as WSDL, SOAP, UDDI, WS-Security, WS-Addressing, WS-ReliableMessaging, WS-Trust, BPEL and various Java specifications that cover Web Services development (JAX-WS, JAXB and JSR 921). We will use Eclipse and JBoss for development and lab exercise.
- XML
- SOAP
- WSDL
- UDDI
- JAXB
- JAX-WS
- JSR 921
- WS-Security
- Interoperability issues
- WS-Addressing
- WS-ReliableMessaging
- WS-Trust and WS-Federation
- BPEL
Duration: 5 Days (40 Hours)
- Eclipse
- JBoss
- OS - Windows XP
Prerequisites
- Basic Java, J2EE, Web Development and Database knowledge.
Ground Floor G-2, Aakruti Complex,
Above Stadium Under Bridge,
Navrangpura, Ahmedabad - 380009
Gujarat, India
Telephone: +91-79-40047259
Email: contact@attuneinfocom.com
Email: contact@attuneinfocom.com
No comments:
Post a Comment