Java method "com.atkearney.dot.com.forms.portlet.service.FormsPortletService.getFormData(String, com.liferay.portal.kernel.json.JSONObject)" threw an exception when invoked on com.atkearney.dot.com.forms.portlet.service.FormsPortletService object "com.atkearney.dot.com.forms.portlet.service.FormsPortletService@b18e39e"; see cause exception in the Java stack trace. ---- FTL stack trace ("~" means nesting-related): - Failed at: ${FormsPortletService.getFormData(rec... [in template "20116#20152#932918" at line 194, column 32] ----
1<#assign serviceContext = staticUtil["com.liferay.portal.kernel.service.ServiceContextThreadLocal"].getServiceContext() />
2<#assign themeDisplay = serviceContext.getThemeDisplay() />
3<#assign preview = false/>
4
5<#if (themeDisplay.getURLCurrent()?contains("preview_article_content.jsp")) || (themeDisplay.getURLCurrent()?contains("preview_article_content_template.jsp"))>
6 <#assign preview = true />
7
8 <script data-senna-track="permanent"
9 src="/o/atk-dot-com-theme/js/react/dist/vendor.bundle.js"></script>
10
11 <script data-senna-track="permanent"
12 src="/o/atk-dot-com-theme/js/react/dist/bundle.js"></script>
13
14 <style data-senna-track="temporary" type="text/css">
15 :root {
16 --container-max-sm: 576px;
17 --h4-font-size: 22px;
18 --font-weight-bold: 700;
19 --rounded-pill: 50rem;
20 --navigation-submenu-item-float: left;
21 --display4-weight: 300;
22 --danger: #da1414;
23 --atk-row: absolute;
24 --display2-size: 5.5rem;
25 --body-bg: #f9f9f9;
26 --display2-weight: 300;
27 --display1-weight: 300;
28 --display3-weight: 300;
29 --box-shadow-sm: 0 .125rem .25rem rgba(0, 0, 0, .075);
30 --text-align-hero-text-container: center;
31 --cta-background-color: #F5F5F5;
32 --font-weight-lighter: lighter;
33 --h3-font-size: 36px;
34 --btn-outline-primary-hover-border-color: #0b5fff;
35 --transition-collapse: height .35s ease;
36 --blockquote-small-color: #6b6c7e;
37 --gray-200: #f1f2f5;
38 --btn-secondary-hover-background-color: #f7f8f9;
39 --gray-600: #6b6c7e;
40 --secondary: #6b6c7e;
41 --btn-outline-primary-color: #0b5fff;
42 --btn-link-hover-color: #004ad7;
43 --hr-border-color: rgba(0, 0, 0, .1);
44 --hr-border-margin-y: 1rem;
45 --light: #f1f2f5;
46 --btn-outline-primary-hover-color: #0b5fff;
47 --font-weight-read-more: 400;
48 --btn-secondary-background-color: #fff;
49 --btn-outline-secondary-hover-border-color: transparent;
50 --display3-size: 4.5rem;
51 --primary: #0b5fff;
52 --container-max-md: 768px;
53 --border-radius-sm: 0.1875rem;
54 --display-line-height: 1.2;
55 --font-family-hero-text: 'Graphik Web';
56 --h6-font-size: 0.8125rem;
57 --h2-font-size: 44px;
58 --aspect-ratio-4-to-3: 75%;
59 --font-family-read-more: 'Graphik Web';
60 --spacer-10: 10rem;
61 --font-family-semibold: 'Graphik Web';
62 --font-weight-normal: 400;
63 --dark: #272833;
64 --blockquote-small-font-size: 80%;
65 --h5-font-size: 0.875rem;
66 --blockquote-font-size: 1.25rem;
67 --transition-fade: opacity .15s linear;
68 --display4-size: 3.5rem;
69 --border-radius-lg: 0.375rem;
70 --btn-primary-hover-color: #fff;
71 --display1-size: 6rem;
72 --black: #000;
73 --gray-300: #e7e7ed;
74 --gray-700: #495057;
75 --btn-secondary-border-color: #cdced9;
76 --btn-outline-secondary-hover-color: #272833;
77 --purple: #7823DC;
78 --body-color: #111;
79 --btn-outline-secondary-hover-background-color: rgba(39, 40, 51, 0.03);
80 --font-weight-button-body: 400;
81 --btn-primary-color: #fff;
82 --btn-secondary-color: #6b6c7e;
83 --btn-secondary-hover-border-color: #cdced9;
84 --box-shadow-lg: 0 1rem 3rem rgba(0, 0, 0, .175);
85 --container-max-lg: 992px;
86 --btn-outline-primary-border-color: #0b5fff;
87 --aspect-ratio: 100%;
88 --cta-link-hover-color: #000;
89 --body-container: #fff;
90 --cta-link-color: #7823DC;
91 --aspect-ratio-16-to-9: 56.25%;
92 --box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15);
93 --white: #fff;
94 --portlet-bg-color: #272833;
95 --warning: #b95000;
96 --info: #2e5aac;
97 --hr-border-width: 1px;
98 --btn-link-color: #0b5fff;
99 --gray-400: #cdced9;
100 --font-weight-hero-text-h4: 100;
101 --gray-800: #393a4a;
102 --font-weight-semibold: 600;
103 --btn-outline-primary-hover-background-color: #f0f5ff;
104 --btn-primary-hover-background-color: #0053f0;
105 --btn-primary-background-color: #0b5fff;
106 --font-weight-heading4: 100;
107 --font-weight-hero-text-h1: 600;
108 --font-weight-heading3: 400;
109 --success: #287d3c;
110 --font-family-heading4: 'Graphik Web';
111 --font-family-heading3: 'Graphik Web';
112 --font-weight-heading2: 400;
113 --font-weight-heading1: 600;
114 --font-size-sm: 0.875rem;
115 --font-family-heading2: 'Graphik Web';
116 --btn-primary-border-color: #0b5fff;
117 --font-family-heading1: 'Graphik Web';
118 --font-family-base: 'Arabic', sans-serif;
119 --spacer-0: 0;
120 --font-family-monospace: 'Arabic', sans-serif;
121 --lead-font-size: 1.25rem;
122 --border-radius: 0.25rem;
123 --spacer-9: 9rem;
124 --font-weight-light: 300;
125 --btn-secondary-hover-color: #272833;
126 --spacer-2: 0.5rem;
127 --font-family-button-body: 'Graphik Web';
128 --spacer-1: 0.25rem;
129 --spacer-4: 1.5rem;
130 --spacer-3: 1rem;
131 --spacer-6: 4.5rem;
132 --spacer-5: 3rem;
133 --spacer-8: 7.5rem;
134 --border-radius-circle: 50%;
135 --spacer-7: 6rem;
136 --font-size-lg: 1.125rem;
137 --aspect-ratio-8-to-3: 37.5%;
138 --font-family-sans-serif: 'Arabic', sans-serif;
139 --gray-100: #f7f8f9;
140 --font-weight-bolder: 900;
141 --container-max-xl: 1280px;
142 --btn-outline-secondary-color: #6b6c7e;
143 --custom-black: #1E1E1E;
144 --gray-500: #a7a9bc;
145 --h1-font-size: 66px;
146 --gray-900: #272833;
147 --text-muted: #a7a9bc;
148 --btn-primary-hover-border-color: transparent;
149 --btn-outline-secondary-border-color: #cdced9;
150 --lead-font-weight: 300;
151 --font-size-base: 0.875rem;
152 }
153
154 </style>
155
156</#if>
157
158<#assign DDLRecordSetLocalService = serviceLocator.findService("com.liferay.dynamic.data.lists.service.DDLRecordSetLocalService")/>
159<#assign PropertyFactoryUtil = serviceLocator.findService("com.liferay.portal.kernel.dao.orm.PropertyFactoryUtil") />
160<#assign GroupLocalService = serviceLocator.findService("com.liferay.portal.kernel.service.GroupLocalService")>
161<#assign JournalArticleLocalService = serviceLocator.findService("com.liferay.journal.service.JournalArticleLocalService")>
162<#assign JSONFactory = serviceLocator.findService("com.liferay.portal.kernel.json.JSONFactory")/>
163<#assign FormsPortletService = serviceLocator.findService("com.atkearney.dot.com.forms.portlet.service.FormsPortletService")/>
164
165
166<#assign
167article = JournalArticleLocalService.getLatestArticle(groupId,.vars['reserved-article-id'].data)
168recordSetUUID = article.getExpandoBridge().getAttribute("Form")
169/>
170
171<#if PullUp?? && PullUp.getData() == "true">
172 <#assign class = "before-minus-60-px-desktop before-minus-20-px-mobile" />
173<#else>
174 <#assign class = "" />
175</#if>
176
177<#if FormTitle?? && FormTitle.getData()?has_content>
178 <#assign formTitle = FormTitle.getData()!"Contact" />
179<#else>
180 <#assign formTitle = "Contact" />
181</#if>
182
183<#assign buttonId = "button_" + randomNamespace />
184
185<div class="atk-container">
186 <div class="atk-row">
187 <div class="d-12-col t-8-col p-6-col">
188 <div id="${buttonId}" class="${class}"></div>
189 </div>
190 </div>
191</div>
192
193<script>
194 var formData = JSON.parse('${FormsPortletService.getFormData(recordSetUUID, null).toString()?js_string}');
195 formData.title = "${formTitle}";
196
197 var componentData = {
198 formData: formData
199 };
200
201 <#if Sector??>
202 var sector = '${Sector.getData()?js_string}';
203 <#else>
204 var sector = '';
205 </#if>
206
207 <#if URL?? && URL.getData()?has_content>
208 <#if Style?? && Style.getData() == "Underline">
209 ATK.React.Component.ExpandingTallUnderline('${buttonId}', '${ButtonText.getData()?js_string}', 'heading3', 'black', 'yellow', '${URL.getData()?js_string}');
210 <#else>
211 ATK.React.Component.HighlightButton('${buttonId}', '${URL.getData()?js_string}', '${ButtonText.getData()?js_string}');
212 </#if>
213 <#else>
214 <#if Style?? && Style.getData() == "Underline">
215 ATK.React.Component.ExpandingUnderlineLinkModal('${buttonId}', '${ButtonText.getData()?js_string}', 'heading3', 'black', 'yellow', sector, 'FORM', componentData);
216 <#else>
217 ATK.React.Component.HighlightButton('${buttonId}', null, '${ButtonText.getData()?js_string}', true, 'FORM', componentData, sector);
218 </#if>
219 </#if>
220
221</script>
Our Roles
Analyst
Together with experienced consultants, analysts work on a broad range of consulting projects involving data gathering and analysis, and apply sophisticated modeling to real-life business problems. For undergraduates, the analyst program is an outstanding introduction to the discipline of consulting and the advanced, collaborative, and innovative solutions delivered on client engagements. Analysts often travel while on assignments that combine strategic business consulting skills with advanced analytical methodologies.
Sourcing Analyst
For undergraduates interested in supply chain management, the sourcing analyst program is a great entry-level consulting opportunity. Sourcing analysts work with clients and sourcing teams to develop and execute the overall strategic sourcing process. A rotational program is in place, providing training and working experience in a number of different roles to enhance your knowledge and potential. Sourcing analysts often work at the client site and apply data analytics techniques as well as category sourcing strategies.
Senior Analyst
For individuals with either an advanced degree other than an MBA or an undergraduate degree plus several years of full-time relevant work experience, the A.T. Kearney Solutions senior analyst position is an important bridge between analyst and analytics associate. This position is designed to develop the talents of individuals who may not have received an MBA but possess relevant experience and a desire to learn and deliver advanced analytical, collaborative, and innovative solutions on client engagements.
Senior Sourcing Analyst
Alongside experienced sourcing consultants, senior sourcing analysts apply their academic, internship, and training experience to various client projects. This role is for individuals with an interest in learning and delivering data analytics techniques and category sourcing strategies on various client engagements. Senior sourcing analysts typically have an advanced degree with a supply management concentration or an undergraduate degree plus several years of relevant work experience.
Summer Associate
Summer associates gain invaluable experience collaborating with clients as they help them achieve lasting, transformational changes, while developing a deeper skillset in procurement or advanced analytic solutions. Over the eight to 10 week summer consultant program, we will nurture your entrepreneurial spirit with hands-on experience that will positively influence the rest of your career. A.T. Kearney Solutions summer associates travel while on assignment to work side by side with our clients. We require enrollment in a competitive MBA program with a supply management concentration or quantitative discipline such as statistics, operations research, or econometrics.
Analytics Associate
As an A.T. Kearney Solutions analytics associate, you will be able to combine your MBA degree and our sophisticated analytics training, and apply those skills to a broad range of management consulting engagements. Analytics associates provide analytical solutions and statistical expertise to market-facing business problems. You will also have the opportunity to participate in internal firm-building activities and represent A.T. Kearney Solutions’ broad capabilities to clients.
Sourcing Associate
Sourcing associates apply their MBA degree and our in-depth strategic sourcing training to various client engagements. Our goal is to help you be very successful throughout your career life cycle. Sourcing associates routinely work at the client site to coach category sourcing teams from the development stage through execution and post follow-up. You will also be able to participate in various internal firm building activities and represent A.T. Kearney Solutions’ broad capabilities to clients.
Analytics Manager
As an analytics manager, you will be involved in various phases of a consulting engagement, from pre-proposal research through final implementation. Almost immediately, you will join a project team, where you will work at a client location sharing your ideas and delivering sophisticated analytical techniques across a broad range of management consulting engagements. Our goal is to involve you in various phases of the consulting process, helping you hone your professional skills. Analytics managers also participate in marketing activities and the preparation of proposals for new engagement opportunities.
Sourcing Manager
Sourcing managers lead client category sourcing teams through the strategic sourcing process. They often work at the client site and are involved in various phases of a consulting engagement. We want to involve you in all phases of the consulting process, helping you hone your professional skills. A sourcing manager is also responsible for project marketing and training communications with client stakeholders and suppliers. Leadership opportunities in client management and staff development increase as you progress into a senior sourcing manager role.
Director
Directors have project oversight on engagements. They are responsible for assigning specific tasks to client team members and making sure that the deliverables are scheduled and presented on time. Directors have opportunities for professional development and mentoring to help guide their career path and develop expertise in specific industry of service practices.
Vice President
Vice presidents are expected to manage large, complex engagements, build client relationships, and contribute to business development. Vice presidents with A.T. Kearney Solutions take on a leadership role and are elected to their position.
Partner
Partners are involved in senior client relationship development and management. They collaborate with CEOs to create long-term strategies and develop enduring relationships. Partners take an active role in the leadership of A.T. Kearney Solutions, developing future leaders and executing the business strategy for the firm. Partners at A.T. Kearney are elected to their position.