Two students discussing about subjects

School of Liberal Arts

Breadcrumb

students walking around the campus

"As an experiential learner, the opportunities made available to me at Marist truly catered to the way in which I learn best. I was able to study in Washington D.C. for a semester, gather public opinion working at the Marist Poll, observe what happens on the ground at the New Hampshire primary, and take on a variety of internships during my studies."
- Meghan Shea '22, Political Science and Philosophy major

The School of Liberal Arts empowers students to function as creative thinkers, skilled writers, and innovative problem-solvers. With a cross-disciplinary mindset, the School of Liberal Arts encourages its students to explore multiple academic areas of interest to increase their marketability after graduation. The School’s interdisciplinary approach to learning and flexible curriculum empower students to diversify their thinking and prepare for their future beyond Marist.

Asset Publisher

An error occurred while processing the template.
The following has evaluated to null or missing:
==> serviceLocator  [in template "86161#86202#257600" at line 1, column 35]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign assetEntryLocalService = serv...  [in template "86161#86202#257600" at line 1, column 1]
----
1<#assign assetEntryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetEntryLocalService") /> 
2	 
3<#assign indexStop = portletPreferences["numberTemplateDisplay"][0]?number - 1> 
4 
5<#assign hidden_from_ql = "" > 
6<#if portletPreferences["hideFromQuickLinks"][0] == 'true'> 
7    <#assign hidden_from_ql = "hidden-from-quicklinks" > 
8</#if> 
9 
10<div id="${randomNamespace}" class="profiles-asset-publisher"> 
11    <div class="container px-0"> 
12        <div class="row mx-0"> 
13            <div class="col-12 text-center text-md-left px-0"> 
14                <h1 id="profiles-asset-publisher-${randomNamespace}-headline" class="${hidden_from_ql} mb-4">${portletPreferences["templateTitle"][0]}</h1> 
15					  </div> 
16					  <#if entries?has_content> 
17						<#list entries as entry> 
18						<div class="col-12 col-md-4">      
19							 
20									<div class="card-deck d-flex flex-wrap"> 
21                     
22												<#assign  
23																 assetEntry = assetEntryLocalService.getEntry(entry.getClassName(), entry.getClassPK()) 
24																 assetRenderer = assetEntry.getAssetRenderer() 
25																 journalArticle = assetRenderer.getAssetObject() 
26																 /> 
27												<@liferay_journal["journal-article"] 
28																					 articleId=journalArticle.getArticleId() 
29																					 ddmTemplateKey="60004" 
30																					 groupId=journalArticle.getGroupId() 
31																					 /> 
32										 
33										</div> 
34                 
35            </div> 
36						<#if entry?index gte indexStop> 
37									<#break> 
38						</#if> 
39						</#list> 
40						</#if> 
41        </div> 
42    </div> 
43</div> 
44					 
45<style> 
46/* Medium and Small Devices (tablets, phones) */ 
47    @media (max-width: 991.98px) { 
48        #${randomNamespace}.profiles-asset-publisher > .container { 
49            padding: 40px 30px; 
50
51				#${randomNamespace}.profiles-asset-publisher .card-deck { 
52            justify-content: center; 
53
54			 
55				#profiles-asset-publisher-${randomNamespace}-headline { 
56					/*text-align: center;*/ 
57
58
59 
60    /* Large Devices (Laptops, Desktops) */ 
61    @media (min-width: 992px) {  
62        #${randomNamespace}.profiles-asset-publisher > .container { 
63            padding-top: 50px; 
64            padding-bottom: 50px; 
65
66				#${randomNamespace}.profiles-asset-publisher .card-deck { 
67            justify-content: space-between; 
68
69
70</style> 
71	 
72<#-- OLD TEMPLATE (All profiles were under a single col) 
73<div id="${randomNamespace}" class="profiles-asset-publisher"> 
74    <div class="container"> 
75        <div class="row"> 
76            <div class="col"> 
77                <h1 id="profiles-asset-publisher-${randomNamespace}-headline" class="${hidden_from_ql} mb-4">${portletPreferences["templateTitle"][0]}</h1> 
78					  </div> 
79					  <#if entries?has_content> 
80							<#list entries as entry> 
81							<#assign  
82					  		assetEntry = assetEntryLocalService.getEntry(entry.getClassName(), entry.getClassPK()) 
83								assetRenderer = assetEntry.getAssetRenderer() 
84					  		journalArticle = assetRenderer.getAssetObject() 
85							/> 
86					  	<div class="col-12 col-lg-4"> 
87									<div class="card-deck d-flex flex-wrap"> 
88									    <@liferay_journal["journal-article"] 
89											    articleId=journalArticle.getArticleId() 
90													ddmTemplateKey="60004" 
91													groupId=journalArticle.getGroupId() 
92											/> 
93									</div> 
94              </div> 
95							<#if entry?index gte indexStop> 
96								 <#break> 
97							</#if> 
98						  </#list> 
99					  <#/if> 
100        </div> 
101    </div> 
102</div> 
103--> 
Image of Dr. Martin Shaffer, Dean of the School of Liberal Arts.

A Message from the Dean

When students and their families visit, I often suggest that the best way to understand the liberal arts at Marist is to take a walk around Fontaine Hall, the award-winning building that houses our school. 

Dr. Martin Shaffer, Dean

News

School of Liberal Arts

Asset Publisher

An error occurred while processing the template.
The following has evaluated to null or missing:
==> serviceLocator  [in template "86161#86202#56302" at line 8, column 38]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign AssetCategoryLocalService = s...  [in template "86161#86202#56302" at line 8, column 1]
----
1<#assign friendly_url = portalUtil.getLayoutSetFriendlyURL(themeDisplay.getLayoutSet(), themeDisplay) + "/-/" + .vars['reserved-article-url-title'].data> 
2<#assign displaydate = .vars['reserved-article-display-date'].data> 
3<#assign originalLocale = .locale> 
4<#setting locale = localeUtil.getDefault()> 
5<#assign displaydate = displaydate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
6<#assign displaydate_short = displaydate?string("MMM d")> 
7<#assign differenceDate = (.now?long / 86400000)?round - (displaydate?long / 86400000)?round /> 
8<#assign AssetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") /> 
9<#assign AssetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") /> 
10<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
11<#assign journalArticle = JournalArticleLocalService.getArticle(getterUtil.getLong(groupId),.vars['reserved-article-id'].data) /> 
12<#assign categories = AssetCategoryLocalService.getCategories("com.liferay.journal.model.JournalArticle", journalArticle.getResourcePrimKey()) /> 
13<#if categories?has_content> 
14    <#list categories as category> 
15				<#assign vNum = category.getVocabularyId()> 
16				<#assign v  = AssetVocabularyLocalService.getAssetVocabulary(vNum)> 
17    		<#if v.getName() == "topic" > 
18        	<#assign cat = category.getName()> 
19					<#assign catId = category.getCategoryId()> <!-- Topic --> 
20    		</#if> 
21				<#if v.getName() == "news-feed-type"> <!-- Feed Type --> 
22        	<#assign feed_type = category.getName()> 
23					<#assign feedID = category.getCategoryId()> 
24    		</#if> 
25    </#list> 
26</#if> 
27 
28			<#if (Thumbnail_Image.getData())?? && Thumbnail_Image.getData() != ""> 
29				<#if (feed_type?? && feed_type == "News at Marist") > 
30						<a aria-label="${Article_display_title.getData()}" href="${friendly_url}" role="img" title="${Article_display_title.getData()}"> 
31							<img loading="lazy" class="img-fluid" alt="${Thumbnail_Image.getAttribute("alt")}" src="${Thumbnail_Image.getData()}"/> 
32						</a> 
33				<#else> 
34						<a aria-label="${Article_display_title.getData()}" href="${URL.getData()}" rel="noopener" title="${Article_display_title.getData()}"> 
35							<img loading="lazy" class="img-fluid" alt="${Thumbnail_Image.getAttribute("alt")}" src="${Thumbnail_Image.getData()}"/> 
36						</a> 
37				</#if> 
38		</#if> 
39		<div class="news-info-group"> 
40					<span class="news-category"> 
41							<#if cat??> 
42								<a href="/news-archives?category=${catId}">${cat}</a> 
43							</#if> 
44					</span>	 
45					<h3 itemprop="headline" class="featured_news_r_title"> 
46							<#if (Article_display_title.getData())??> 
47								<#if (feed_type?? && feed_type == "News at Marist") > 
48										<a href="${friendly_url}"> 
49											${Article_display_title.getData()} 
50										</a> 
51								<#else> 
52										<a href="${URL.getData()}"> 
53												${Article_display_title.getData()} 
54										</a> 
55								</#if> 
56							</#if> 
57					</h3> 
58					<div class="news-info"> 
59							<span itemprop="datePublished"> 
60								<#if differenceDate lt 1 > 
61									<icon class="ion-clock"></icon>Today 
62								<#elseif differenceDate == 1 > 
63									<icon class="ion-clock"></icon>${differenceDate} day ago 
64								<#elseif differenceDate gt 1 && differenceDate lte 7 > 
65									<icon class="ion-clock"></icon>${differenceDate} days ago 
66								<#else> 
67									<icon class="ion-clock"></icon>&nbsp;${displaydate_short} 
68								</#if> 
69							</span> 
70					</div>	 
71   </div> 
An error occurred while processing the template.
The following has evaluated to null or missing:
==> serviceLocator  [in template "86161#86202#56302" at line 8, column 38]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign AssetCategoryLocalService = s...  [in template "86161#86202#56302" at line 8, column 1]
----
1<#assign friendly_url = portalUtil.getLayoutSetFriendlyURL(themeDisplay.getLayoutSet(), themeDisplay) + "/-/" + .vars['reserved-article-url-title'].data> 
2<#assign displaydate = .vars['reserved-article-display-date'].data> 
3<#assign originalLocale = .locale> 
4<#setting locale = localeUtil.getDefault()> 
5<#assign displaydate = displaydate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
6<#assign displaydate_short = displaydate?string("MMM d")> 
7<#assign differenceDate = (.now?long / 86400000)?round - (displaydate?long / 86400000)?round /> 
8<#assign AssetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") /> 
9<#assign AssetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") /> 
10<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
11<#assign journalArticle = JournalArticleLocalService.getArticle(getterUtil.getLong(groupId),.vars['reserved-article-id'].data) /> 
12<#assign categories = AssetCategoryLocalService.getCategories("com.liferay.journal.model.JournalArticle", journalArticle.getResourcePrimKey()) /> 
13<#if categories?has_content> 
14    <#list categories as category> 
15				<#assign vNum = category.getVocabularyId()> 
16				<#assign v  = AssetVocabularyLocalService.getAssetVocabulary(vNum)> 
17    		<#if v.getName() == "topic" > 
18        	<#assign cat = category.getName()> 
19					<#assign catId = category.getCategoryId()> <!-- Topic --> 
20    		</#if> 
21				<#if v.getName() == "news-feed-type"> <!-- Feed Type --> 
22        	<#assign feed_type = category.getName()> 
23					<#assign feedID = category.getCategoryId()> 
24    		</#if> 
25    </#list> 
26</#if> 
27 
28			<#if (Thumbnail_Image.getData())?? && Thumbnail_Image.getData() != ""> 
29				<#if (feed_type?? && feed_type == "News at Marist") > 
30						<a aria-label="${Article_display_title.getData()}" href="${friendly_url}" role="img" title="${Article_display_title.getData()}"> 
31							<img loading="lazy" class="img-fluid" alt="${Thumbnail_Image.getAttribute("alt")}" src="${Thumbnail_Image.getData()}"/> 
32						</a> 
33				<#else> 
34						<a aria-label="${Article_display_title.getData()}" href="${URL.getData()}" rel="noopener" title="${Article_display_title.getData()}"> 
35							<img loading="lazy" class="img-fluid" alt="${Thumbnail_Image.getAttribute("alt")}" src="${Thumbnail_Image.getData()}"/> 
36						</a> 
37				</#if> 
38		</#if> 
39		<div class="news-info-group"> 
40					<span class="news-category"> 
41							<#if cat??> 
42								<a href="/news-archives?category=${catId}">${cat}</a> 
43							</#if> 
44					</span>	 
45					<h3 itemprop="headline" class="featured_news_r_title"> 
46							<#if (Article_display_title.getData())??> 
47								<#if (feed_type?? && feed_type == "News at Marist") > 
48										<a href="${friendly_url}"> 
49											${Article_display_title.getData()} 
50										</a> 
51								<#else> 
52										<a href="${URL.getData()}"> 
53												${Article_display_title.getData()} 
54										</a> 
55								</#if> 
56							</#if> 
57					</h3> 
58					<div class="news-info"> 
59							<span itemprop="datePublished"> 
60								<#if differenceDate lt 1 > 
61									<icon class="ion-clock"></icon>Today 
62								<#elseif differenceDate == 1 > 
63									<icon class="ion-clock"></icon>${differenceDate} day ago 
64								<#elseif differenceDate gt 1 && differenceDate lte 7 > 
65									<icon class="ion-clock"></icon>${differenceDate} days ago 
66								<#else> 
67									<icon class="ion-clock"></icon>&nbsp;${displaydate_short} 
68								</#if> 
69							</span> 
70					</div>	 
71   </div> 
An error occurred while processing the template.
The following has evaluated to null or missing:
==> serviceLocator  [in template "86161#86202#56302" at line 8, column 38]

----
Tip: If the failing expression is known to legally refer to something that's sometimes null or missing, either specify a default value like myOptionalVar!myDefault, or use <#if myOptionalVar??>when-present<#else>when-missing</#if>. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)??
----

----
FTL stack trace ("~" means nesting-related):
	- Failed at: #assign AssetCategoryLocalService = s...  [in template "86161#86202#56302" at line 8, column 1]
----
1<#assign friendly_url = portalUtil.getLayoutSetFriendlyURL(themeDisplay.getLayoutSet(), themeDisplay) + "/-/" + .vars['reserved-article-url-title'].data> 
2<#assign displaydate = .vars['reserved-article-display-date'].data> 
3<#assign originalLocale = .locale> 
4<#setting locale = localeUtil.getDefault()> 
5<#assign displaydate = displaydate?datetime("EEE, d MMM yyyy HH:mm:ss Z")> 
6<#assign displaydate_short = displaydate?string("MMM d")> 
7<#assign differenceDate = (.now?long / 86400000)?round - (displaydate?long / 86400000)?round /> 
8<#assign AssetCategoryLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetCategoryLocalService") /> 
9<#assign AssetVocabularyLocalService = serviceLocator.findService("com.liferay.asset.kernel.service.AssetVocabularyLocalService") /> 
10<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService") /> 
11<#assign journalArticle = JournalArticleLocalService.getArticle(getterUtil.getLong(groupId),.vars['reserved-article-id'].data) /> 
12<#assign categories = AssetCategoryLocalService.getCategories("com.liferay.journal.model.JournalArticle", journalArticle.getResourcePrimKey()) /> 
13<#if categories?has_content> 
14    <#list categories as category> 
15				<#assign vNum = category.getVocabularyId()> 
16				<#assign v  = AssetVocabularyLocalService.getAssetVocabulary(vNum)> 
17    		<#if v.getName() == "topic" > 
18        	<#assign cat = category.getName()> 
19					<#assign catId = category.getCategoryId()> <!-- Topic --> 
20    		</#if> 
21				<#if v.getName() == "news-feed-type"> <!-- Feed Type --> 
22        	<#assign feed_type = category.getName()> 
23					<#assign feedID = category.getCategoryId()> 
24    		</#if> 
25    </#list> 
26</#if> 
27 
28			<#if (Thumbnail_Image.getData())?? && Thumbnail_Image.getData() != ""> 
29				<#if (feed_type?? && feed_type == "News at Marist") > 
30						<a aria-label="${Article_display_title.getData()}" href="${friendly_url}" role="img" title="${Article_display_title.getData()}"> 
31							<img loading="lazy" class="img-fluid" alt="${Thumbnail_Image.getAttribute("alt")}" src="${Thumbnail_Image.getData()}"/> 
32						</a> 
33				<#else> 
34						<a aria-label="${Article_display_title.getData()}" href="${URL.getData()}" rel="noopener" title="${Article_display_title.getData()}"> 
35							<img loading="lazy" class="img-fluid" alt="${Thumbnail_Image.getAttribute("alt")}" src="${Thumbnail_Image.getData()}"/> 
36						</a> 
37				</#if> 
38		</#if> 
39		<div class="news-info-group"> 
40					<span class="news-category"> 
41							<#if cat??> 
42								<a href="/news-archives?category=${catId}">${cat}</a> 
43							</#if> 
44					</span>	 
45					<h3 itemprop="headline" class="featured_news_r_title"> 
46							<#if (Article_display_title.getData())??> 
47								<#if (feed_type?? && feed_type == "News at Marist") > 
48										<a href="${friendly_url}"> 
49											${Article_display_title.getData()} 
50										</a> 
51								<#else> 
52										<a href="${URL.getData()}"> 
53												${Article_display_title.getData()} 
54										</a> 
55								</#if> 
56							</#if> 
57					</h3> 
58					<div class="news-info"> 
59							<span itemprop="datePublished"> 
60								<#if differenceDate lt 1 > 
61									<icon class="ion-clock"></icon>Today 
62								<#elseif differenceDate == 1 > 
63									<icon class="ion-clock"></icon>${differenceDate} day ago 
64								<#elseif differenceDate gt 1 && differenceDate lte 7 > 
65									<icon class="ion-clock"></icon>${differenceDate} days ago 
66								<#else> 
67									<icon class="ion-clock"></icon>&nbsp;${displaydate_short} 
68								</#if> 
69							</span> 
70					</div>	 
71   </div> 

Get More Info

Request for More Information