<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Danilo Soares Cardoso</title>
    <description>The latest articles on DEV Community by Danilo Soares Cardoso (@danilosoarescardoso).</description>
    <link>https://dev.to/danilosoarescardoso</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F149932%2Fb9d89161-0d3e-4521-ba04-83b9c407bc1b.jpg</url>
      <title>DEV Community: Danilo Soares Cardoso</title>
      <link>https://dev.to/danilosoarescardoso</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/danilosoarescardoso"/>
    <language>en</language>
    <item>
      <title>Testing requests to SOAP Webservices in Weblogic</title>
      <dc:creator>Danilo Soares Cardoso</dc:creator>
      <pubDate>Sun, 26 Apr 2020 06:00:59 +0000</pubDate>
      <link>https://dev.to/danilosoarescardoso/testing-requests-to-soap-webservices-in-weblogic-709</link>
      <guid>https://dev.to/danilosoarescardoso/testing-requests-to-soap-webservices-in-weblogic-709</guid>
      <description>&lt;p&gt;Every time when I work with a new technology, I like to read more about this stuff and do some experiments. When we work with development, this lead us to that way, learning with the pratice and day-by-day activies. One of the examples of this learning that I acquired in the last months was working with some new technologies in my career.&lt;/p&gt;

&lt;p&gt;In the area that I am responsible for at TCS, one of the applications we care for is made in Java and runs on &lt;a href="https://www.oracle.com/br/middleware/technologies/weblogic.html"&gt;Weblogic&lt;/a&gt;, a server maintained by Oracle for Java EE systems. Something very interesting that I have been deepening in the last months dealing with Weblogic is the test of web services that it brings as standard, called Web Services Test Client.&lt;/p&gt;

&lt;p&gt;This tool is very useful because it allows tests to be done quickly, without having to create mocks in SoapUI, for example. According to the official documentation, the Web Services Test Client is used to:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;test basic functionality to test the correct operation of the 'deployed' webservice&lt;/li&gt;
&lt;li&gt;basic security tests for authentication&lt;/li&gt;
&lt;li&gt;view the web service WSDL&lt;/li&gt;
&lt;li&gt;advanced tests, such as atomic transactions, sending SOAP messages, Oracle Web Service Manager (OWSM) security policies, among others&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you have a web service implemented on a Weblogic server, it is very easy to access the Web Services Test Client, just access the URL &lt;a href="http://host:port/ws_utc"&gt;http://host:port/ws_utc&lt;/a&gt; of your project. The host must be replaced by the Weblogic server being used and the port must be the one used by your Weblogic (usually port 7001 is used as the default).&lt;/p&gt;

&lt;h2&gt;
  
  
  Exemplifying
&lt;/h2&gt;

&lt;p&gt;I will show below some screenshots of how the test scenario can be set up. For the example, I used &lt;a href="https://github.com/AKSarav/SampleWebService"&gt;this repository&lt;/a&gt; available on Github. After uploading the environment, just access the project URL following the pattern mentioned above, and what will appear will be the screen below:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--SA1Qr3f9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tgsyd7sc72y7hp1a9v7g.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--SA1Qr3f9--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/tgsyd7sc72y7hp1a9v7g.png" alt="Weblogic Web Service Test Client"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Image 1 - Endpoints registered in the application&lt;/p&gt;

&lt;p&gt;In the screen above we can see the two endpoints created in this project, "GetRhymingWorld" and "Hello". When clicking on the first, we have the screen shown below, listing the received parameters and options for authentication, addressing, among others. For our example, we will only use the function of passing parameter, to check how the API tests work in this scenario.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--WcdW-KTA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/lu676es3ea2f70fatuz9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--WcdW-KTA--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/lu676es3ea2f70fatuz9.png" alt="Weblogic Web Service Test Client"&gt;&lt;/a&gt;&lt;br&gt;
Image 2 - Parameter of the first endpoint&lt;/p&gt;

&lt;p&gt;This application's endpoint was created to receive a word and return its rhymes from the &lt;a href="https://www.datamuse.com/api/"&gt;Datamuse&lt;/a&gt; website. I took the test searching for the word 'Java'. When clicking on 'Invoke', Weblogic will send a request to the API, bringing the results in xml format.&lt;/p&gt;

&lt;p&gt;Below we see the xml that was returned with the English synonyms for the word 'Java'. We can also see that there is some data in JSON, but this is because this is the way that the Datamuse API returns its results. Nothing that a simple stop in the application does not solve.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--K9ov2M2b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/i5wp8iw7t6pdrpumqekr.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--K9ov2M2b--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/i5wp8iw7t6pdrpumqekr.png" alt="Weblogic Web Service Test Client"&gt;&lt;/a&gt;&lt;br&gt;
Image 3 - Endpoint return&lt;/p&gt;

&lt;p&gt;It is worth mentioning that there are other applications that bring the same type of functionality, such as SoapUI. The difference is that with this tool you gain a little more agility because it is already a feature implemented in Weblogic, in addition to having one more option for the time when multiple tests are needed.&lt;/p&gt;

&lt;p&gt;If you have any suggestions or questions, just send me in the comments or by message!&lt;/p&gt;

</description>
      <category>weblogic</category>
      <category>webservices</category>
      <category>soap</category>
      <category>java</category>
    </item>
    <item>
      <title>Desenvolvimento não é apenas sobre código</title>
      <dc:creator>Danilo Soares Cardoso</dc:creator>
      <pubDate>Sun, 24 Nov 2019 20:56:18 +0000</pubDate>
      <link>https://dev.to/danilosoarescardoso/desenvolvimento-nao-e-apenas-sobre-codigo-25a</link>
      <guid>https://dev.to/danilosoarescardoso/desenvolvimento-nao-e-apenas-sobre-codigo-25a</guid>
      <description>&lt;p&gt;&lt;em&gt;Artigo postado originalmente em &lt;a href="https://danilo.dev/blog/desenvolvimento-nao-e-apenas-sobre-codigo/"&gt;danilo.dev&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Quem trabalha com desenvolvimento geralmente passa por momentos em que se sente frustrado. Isso pode ocorrer porque um determinado programa não funcionou ou, o que acaba sendo pior, com as escolhas que foram feitas na carreira e por não perceber uma solidez no que faz. Quando cito isso, não estou me pautando apenas pela experiência própria, mas sim pela convivência com diversos programadores ao longo desses anos. E aí, como lidar com as frustrações na vida de desenvolvedor?&lt;/p&gt;

&lt;p&gt;Antes de tudo, creio que valha ressaltar que este texto não é um canivete suíço que vai valer para todo e qualquer profissional de tecnologia. Assim como um framework JavaScript não vai suprir todas as necessidades de um projeto, um texto não vai ser o remédio para todos os problemas. Minha ideia aqui é compartilhar um pouco do que aprendi ao longo do tempo e mostrar que precisamos, sim, desacelerar às vezes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Cuide de sua saúde mental
&lt;/h2&gt;

&lt;p&gt;Mais do que ser um excelente desenvolvedor, é muito importante que você esteja bem consigo mesmo. Li dias atrás no Twitter do grande &lt;a href="https://www.linkedin.com/in/willianjusten/"&gt;Willian Justen&lt;/a&gt; uma thread onde o pessoal falava sobre saúde mental de devs e acabei caindo &lt;a href="https://willianjusten.com.br/saude-deve-ser-a-prioridade/"&gt;nesse post&lt;/a&gt; dele. Achei uma leitura sensacional porque mostra como a gente precisa dar algumas pausas no dia-a-dia pra simplesmente descansar. Conheço muita gente que passa a semana inteira trabalhando até tarde, vai pra eventos no final de semana, mas não tem um momento de relaxamento, pra conectar consigo.&lt;/p&gt;

&lt;p&gt;Seja meditando, lendo um livro ou fazendo uma caminhada mais longa, &lt;strong&gt;é essencial desacelerar para manter o ritmo&lt;/strong&gt; no dia-a-dia. Por mais que pareça uma frase desconexa, ela faz todo o sentido. A gente precisa de momentos de paz pra conseguir relaxar a mente o bastante para não adoecer.&lt;/p&gt;

&lt;h2&gt;
  
  
  Produtividade não é sinônimo de profissionalismo
&lt;/h2&gt;

&lt;p&gt;Uma métrica que eu usava muito no passado e que vejo ser muito errada era a de que você define o quão bom é um desenvolvedor através da sua produção, ou seja, quanto mais código ou entregas ele faz, melhor ele é. Demorou bastante pra minha ficha cair e perceber que um bom desenvolvedor não é aquele que entrega muito. Quando você começa a aprender uma tecnologia, é natural que queira ter soluções prontas e que mostrem o seu potencial, mas isso não faz de você um bom profissional.&lt;/p&gt;

&lt;p&gt;Com o passar dos anos percebi que para ser um bom desenvolvedor, você precisa entender que em alguns momentos sua produção não será a melhor da equipe. Isso pode ocorrer nas horas em que o conhecimento de uma ferramenta ainda está sendo adquirido, quando o projeto é difícil de assimilar ou até mesmo quando algo pessoal te impede de focar 100%.&lt;/p&gt;

&lt;p&gt;Nessas horas, é sempre importante ter esses problemas alinhados com seu gestor. Existem &lt;a href="https://qulture.rocks/blog/como-fazer-uma-one-on-one-e-por-que/"&gt;metodologias que buscam facilitar essa comunicação&lt;/a&gt;, mas se sua empresa não usa tais mecanismos, vá até seu gestor e explique a situação. Afinal, proatividade é algo que faz toda a diferença nas empresas. Quando você mostra para sua gerência que conhece os seus pontos fracos, isso mostra que você sabe onde pode melhorar, o que é algo essencial em times auto gerenciáveis, um item importante de métodos ágeis.&lt;/p&gt;

&lt;h2&gt;
  
  
  Você não é a Wikipédia
&lt;/h2&gt;

&lt;p&gt;Quando eu era adolescente, ficava abismado com a quantidade de conteúdo que havia na Wikipédia. Não podia usar ela nos trabalhos escolares, mas ainda assim fazia meus olhos brilharem, com tanta informação a poucos cliques. O tempo passou e percebi que, apesar de acumularmos conhecimento durante toda nossa vida, existem limitações nesse processo. No caso de um desenvolvedor, é muito comum que ele queira aprender muito sobre muitas ferramentas diferentes. GraphQL, Flutter, React, Node, Hazelcast, Docker...o que não faltam são áreas e especialidades diferentes para nos interessarmos e irmos atrás.&lt;/p&gt;

&lt;p&gt;O que vai ajudar a você se estressar menos é focar em pontos específicos de estudo. Por exemplo, se você trabalha com Spring e Angular e pensa em fazer carreira no seu trabalho, vale a pena estudar isso e se especializar. Agora, se sua pegada é trabalhar com infra-estrutura daqui 5 anos, é nesse caminho que você precisa seguir a partir de agora, e não desistir lá na frente.&lt;/p&gt;




&lt;p&gt;Existem dois caras com quem falo muito sobre isso durante a semana que são o &lt;a href="https://www.linkedin.com/in/gustavobcx/"&gt;Gustavo&lt;/a&gt; e o &lt;a href="https://www.linkedin.com/in/carlos-gabriel-goiani-flor-4a2ab5150"&gt;Flor&lt;/a&gt;. A gente sempre bate papo sobre tecnologias que estão no ar e o que vale a pena aprender no momento. E foi durante conversas assim que percebi como os assuntos abordados neste texto são importantes de se falar. Acredito que valha muito a pena falar sobre isso com desenvolvedores de sua confiança porque ajuda a perceber no que estamos indo bem e no que podemos melhorar. Não só tecnicamente mas nas soft skills também.&lt;/p&gt;

</description>
      <category>softskills</category>
      <category>desenvolvimento</category>
    </item>
  </channel>
</rss>
